Javascript ajax-如何清除以前的ajax结果
我有一个ajax调用,它在大部分情况下都有效,但它似乎记住了前面的结果。编辑:这可能是由于将行为绑定到divid 我的例行程序结构如下:Javascript ajax-如何清除以前的ajax结果,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个ajax调用,它在大部分情况下都有效,但它似乎记住了前面的结果。编辑:这可能是由于将行为绑定到divid 我的例行程序结构如下: 调用ajax搜索输入是否正确,从php获取响应。结果可以是是或否 如果结果为“是”,则将holder div的颜色更改为视觉提示,允许用户双击该div以运行另一个函数。如果不允许,则不允许双击div,也不要运行其他函数 简单,对吗?除此之外,当第一个ajax调用产生“是”结果,然后用户执行第二个ajax调用并产生“否”结果时,用户可以单击“否”结果并执行预期产
function search(input,divid) {
var queryString = "name=" + input+"&divid="+divid;
var url = "../l.php";
$.ajax({
type: 'get',
url: url,
data: queryString,
cache: false,
dataType: 'text',
timeout: 10000,
error: function(xhr, status, error) { alert('Search Error: '+ xhr.status+ ' - '+ error); },
success: function(response) {
var result = response;
var err = /:/;
var divid = "#"+divid;
if (result == "Yes" )
{
$(tldid).attr({'class':'tg1', 'title':'Doubleclick to save'});
var testword = 'xyz';
$(divid).dblclick(function() {
alert (testword);
$(divid).unbind('doubleclick');
});
else {
//alert (testword +" should not have been passed here, but it does");
$(divid).attr({'class':'tg2'});
}
}//success
});
}//end
您应该更改
$(divid).unbind('doubleclick')
到$(divid).unbind('dblclick')
您应该更改$(divid)。解除绑定('doubleclick')
到$(divid).unbind('dblclick')代码>是,当URL相同时,浏览器会在后续调用中从缓存中获取结果。请参阅,通过将时间戳或另一个查询参数添加到URL@sudmong:他已经设置了缓存:false
。将cache设置为false会向URL@sudmong,我想你不理解我的问题,这不是浏览器缓存的问题,我知道这个问题,我将缓存设置为false。当我输入问题时,似乎是绑定问题。我看了你的第一句话,“但它似乎记住/缓存了以前的结果。”???@sudmong,很抱歉语言混乱,我不知道错误是什么,所以我无法准确命名。是的,当URL相同时,浏览器将在后续调用中从缓存中获取结果。请参阅,通过将时间戳或另一个查询参数添加到URL@sudmong:他已经设置了缓存:false
。将cache设置为false会向URL@sudmong,我想你不理解我的问题,这不是浏览器缓存的问题,我知道这个问题,我将缓存设置为false。当我输入问题时,似乎是绑定问题。我看了你的第一句话,“但它似乎记住/缓存了以前的结果。”???@sudmong,很抱歉语言混乱,我不知道错误是什么,所以我无法准确命名。谢谢Ben,我完全忽略了这一点。我从这本指南中得到了“双击”,这可能是一个打字错误。我很高兴我遇到了这个问题,它可以部分解释为什么我的脚本导致浏览器运行缓慢。谢谢Ben,我完全忽略了这一点。我从这本指南中得到了“双击”,这可能是一个打字错误。我很高兴我遇到了这个问题,它可以部分解释为什么我的脚本导致浏览器运行缓慢。