Php jQuery-.get()与IE7,8,9的问题

Php jQuery-.get()与IE7,8,9的问题,php,jquery,html,Php,Jquery,Html,我用jQuery测试向php文件发送和接收数据,我对IE有问题(我用IE9,但我用IE8和IE7检查) 当我点击我的div时,我向服务器发送一个“ID”,PHP文件返回答案,它的工作和jQuery在other div和alert msg中显示结果 当我更改收到的php文件中的代码时,问题就开始了,如果我再次单击我的一个div,jQuery显示相同的消息,即使我更改了代码,重播消息现在也不同了 当我关闭并重新打开IE时,这个问题就解决了 firefox和chrome不会出现这个问题,有人知道吗 h

我用jQuery测试向php文件发送和接收数据,我对IE有问题(我用IE9,但我用IE8和IE7检查)

当我点击我的div时,我向服务器发送一个“ID”,PHP文件返回答案,它的工作和jQuery在other div和alert msg中显示结果

当我更改收到的php文件中的代码时,问题就开始了,如果我再次单击我的一个div,jQuery显示相同的消息,即使我更改了代码,重播消息现在也不同了

当我关闭并重新打开IE时,这个问题就解决了

firefox和chrome不会出现这个问题,有人知道吗

html文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
 <head>
  <title>test</title>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <meta http-equiv="X-UA-Compatible" content="IE=9" />
   <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
   <script type="text/javascript">
              $(function(){
                $('.user').click(function(){
                    var id_value = $(this).data('friendid');
                    $.get('test1.php', {id: id_value}, function(data) {
                        $('#show').html(data);
                        alert(data);
                    });
                })
            })

   </script>
 </head>
 <body>
 <div class="user"  data-friendid="1">
    <img src='webimgs/nopf.jpg' alt="test" />
    <h4>&nbsp;fullname</h4>
    <br />
 </div>
 <div class="user"  data-friendid="2">
    <img src='webimgs/nopf.jpg' alt="test2"/>
    <h4>&nbsp;fullname</h4>
    <br />
 </div>
 <div id="show" style="color:red">
 </div>
 </body>
</html>

测试
$(函数(){
$('.user')。单击(函数(){
var id_value=$(this).data('friendid');
$.get('test1.php',{id:id\u value},函数(数据){
$('#show').html(数据);
警报(数据);
});
})
})
全名

全名
以及PHP文件:

<?php
if ($_GET["id"]==1) { echo "you choose number is " . $_GET["id"].", thanks." ; }
?>

jQuery.get方法可以缓存,具体取决于浏览器设置。如果使用.post方法,将阻止在浏览器端缓存数据

引用自

GET的特点:

  • 使用GET进行安全操作,使用POST进行不安全操作
  • 可以缓存GET请求
  • GET请求可以保留在浏览器历史记录中
  • GET请求可以添加书签
  • GET请求可以被分发和共享
  • GET请求可以被黑客攻击

感谢“Boaz”,我使用了
$.ajaxSetup({cache:false})
并解决了这个问题

如果你已经在使用jQuery,为什么不改成
$(this).data('friendid')
?你说得对,我改变了,但这并不能解决问题,你知道吗?这听起来像是一个AJAX缓存问题。在调用
$.get()
之前,尝试使用
$.ajaxSetup({cache:false})
来破坏缓存。现在可以工作了,这是AJAX缓存问题。非常感谢。