Jquery IE。 ajax请求只运行一次

时间:2012-02-21 19:11:40

标签: php javascript jquery ajax

这是代码。当我在IE中运行时,Ajax只运行一次。但是对于所有其他浏览器,它运行良好。                         无标题文档               功能cool_add()     {// alert(post_id);      var txt1 = $(“#txt1”)。val();     $ .post('jqueryphp.php',{txt1:txt1},function(data){     var dat = data;      $( “格”)HTML(数据);         });     }

</script>
</head>

<body>

<form>
<input type="text" id="txt1" /><br />
<input type="button" id="butn" onclick="cool_add();">
</form>
<div></div>
</body>
</html>

它在所有其他浏览器中运行良好,但使用IE浏览器只会运行一次。

3 个答案:

答案 0 :(得分:2)

IE倾向于缓存所有请求,如果请求参数相同,则它将返回缓存的响应。为了避免这种情况,您可以使用$.ajaxSetup以下代码,这些代码将全局应用于任何未来的ajax调用。

$.ajaxSetup ({
      // Disable caching of AJAX responses
      cache: false,
});

您也可以在特定的通话中应用此cache,如下所示

$.ajax ( {
     //..other params
     cache: false,
     //..other params
});

cache=false时,jQuery会为每个请求添加当前时间戳,以便请求参数是唯一的。

答案 1 :(得分:0)

在你的ajax电话中,请确保包括

cache: false

IE缓存所有内容,因此它假设您的呼叫都是一样的。

答案 2 :(得分:0)