我的函数'GetResultById'返回true或false。如何检查JQuery中函数的返回结果?我试图隐藏和显示RadComboBox取决于结果。 这是我的代码。另外我想在页面加载时隐藏RadComboBox。我把combo.hideDropDown()放在Init函数中,但它似乎没有工作。请告诉我。
$.ajax({
url: applicationPath + "/test/Test.svc/GetResultById",
type: "POST",
dataType: "json",
data: '{"sId":' + sender.get_value() + '}',
contentType: "application/json; charset=utf-8",
success: function(result)
{
if(result == true)
{
combo.hideDropdown();
}
}
答案 0 :(得分:0)
我不确定,但我认为结果不会作为一个boolian而是作为一个字符串传递。因此你必须检查结果==“true”......
答案 1 :(得分:0)
如果在异步模式下使用任何ajax函数,则不会返回根据咨询结果调用函数的值,因为调用是异步的。
显示和隐藏可以使用jQuery.ajax事件的内容:
beforeSend 完成(或“错误”和“成功”)
答案 2 :(得分:0)
最好是使用Firebug进行调试。很可能你在服务器上使用的JSON序列化框架不直接输出布尔值,而是作为对象的字段输出。
答案 3 :(得分:0)
在ASP和AJAX调用中使用服务时,我相信结果总是在“d”属性中传回。也就是说,对AJAX成功的回调将在result.d
属性中产生“实际”结果,而不仅仅是result
。
e.g。
success: function(result){
alert(result.d); // actual return result
}
(或者它可能是“.d”,我老实说现在忘了,但无论哪种方式“结果”单独(我不相信)都有结果)
它显示I was right关于逻辑,而不是属性。 result.d
将获得您的退货结果。