Javascript jquerypost总是返回false
我用这个函数来做标记,点击这个工作很好,我的代码返回true,但数据变量是false。为什么Javascript jquerypost总是返回false,javascript,ajax,jquery,Javascript,Ajax,Jquery,我用这个函数来做标记,点击这个工作很好,我的代码返回true,但数据变量是false。为什么 $('#AddProvince').click(function () { var url = '@Url.Action("SetProvinceList")'; var id = $('#Province').val(); var result=false; $.post
$('#AddProvince').click(function () {
var url = '@Url.Action("SetProvinceList")';
var id = $('#Province').val();
var result=false;
$.post(url, { PID: id }, function (data) {
if (data == true) {
var p = "<tr class='tRow'> <td class='tbody'>" + $('#Province option:selected').text() + "</td></tr>";
$('#tblPRovince tr:last').after(p);
}
});
});
$('#AddProvince')。单击(函数(){
var url='@url.Action(“SetProvinceList”);
var id=$(“#省”).val();
var结果=假;
$.post(url,{PID:id},函数(数据){
如果(数据==true){
var p=“”+$(“#省选项:选定”).text()+”;
$('tblprovinctr:last')。在(p)之后;
}
});
});
这是因为数据是字符串,而不是布尔值,请使用
data == 'true'
这是因为数据是字符串,而不是布尔值,只需使用
data == 'true'
来自呼叫的响应始终是字符串,您可以尝试:
if(data)
或
来自呼叫的响应始终是字符串,您可以尝试:
if(data)
或
打开cosole,通过控制台.log(data)粘贴数据值,您已获取var结果=false;但是在上面的代码中没有使用任何where。1。确保url值正确。这主要是问题所在。你可以通过打印2来完成。检查响应是通过检查响应代码而不是数据。我在调试模式下检查所有响应,它调用我的函数,我的函数返回true,然后在调试模式下数据为false。我不知道为什么?可能post是异步的,回调尚未完成。打开cosole并通过
console.log(数据)粘贴数据值
您已获取var结果=false;但是在上面的代码中没有使用任何where。1。确保url值正确。这主要是问题所在。你可以通过打印2来完成。检查响应是通过检查响应代码而不是数据。我在调试模式下检查所有响应,它调用我的函数,我的函数返回true,然后在调试模式下数据为false。我不知道为什么?可能post是异步的,回调尚未完成。