【发布时间】:2022-03-15 22:06:05
【问题描述】:
选择数量下拉按钮后,价格字段将相应更改。但是,我不断收到成功警报,但数据显示结果为空。
我尝试使用成功而不是完成,但结果是一样的。我还删除了数据类型:json,仍然没有变化。
$('#qty').change(function(){
var val = $(this).val();
$.ajax({
method: "GET",
url: "someURLHERE",
data: { val: val},
dataType: "html"
})
.done(function(data) {
alert("Success" + data);
$('#price').html(data);
$('#price').trigger('change');
}).fail(function() {
alert("Fail");
})
});
这是我的模型:
public function getPrice($product_id, $quantity){
$sql = "SELECT price FROM `price_table` where quantity = '".$quantity."' and product_id = '".$product_id."' ";
$query = $this->db->query($sql)->row_array();
return $query;
}
这是我的控制器:
public function getPrice(){
$p_id = $_GET['p_id'];
$qty = $_GET['qty_ag'];
$price = $this->users_model->getPrice($prpduct_id, $quantity);
json_ok($price);
}
现在,警报框正在返回:Success{"status":"OK","data":{"pv_value":"120.00"}}
我想要得到的只是价值 120.00
【问题讨论】:
-
您的服务器返回的负载是否正确?
-
成功或错误取决于响应的HTTP状态码;该响应是否实际上有任何正文内容在这方面并不重要。在浏览器开发工具、网络面板中检查请求,并检查实际返回的内容。
-
您尝试过什么调试问题?这到底和 PHP 有什么关系?
-
#price 在哪个元素中定义?
-
因为 $('#price').html(data);如果它是输入标签将不起作用