2011-02-28 57 views
0

我在IE中遇到了JQuery问题。该代码在Firefox中完美工作。我有一个小表格,通过ajax向db添加两个细节。这是我的代码IE中的JQuery内存缓存

$("#add").click(function(){ 
      $("#all_villa tr").remove();          
      var villa_name = $("#villa_name").val(); 
      var villa_desp = $("#villa_desp").val(); 
      var dataString = "villa_name=" + villa_name + "&villa_desp=" + villa_desp; 
      $.ajax({ 
      type: "GET", 
      url: "ajax_snippets/add_villa.php", 
      data: dataString, 
      success: function(data) { 
        $("#all_villa tr").remove(); 
        $("#msg").html(data); 
        $("#villa_name").val(''); 
        $("#villa_desp").val(''); 
        $("#all_villa").load("ajax_snippets/all_villa.php"); 
       } 
      });    
      return false; 
     }); 

保存到数据库的详细信息后,新的生产线将被添加到下表,其中包含了附加的细节和两个日期选择器字段和两个链接更新和删除的形式。当我使用IE进行测试时,在将详细信息添加到数据库之后,将不会创建这些行,并且现有的更新和删除链接也不起作用。以下是我的更新和删除代码

$("#all_villa .delete").click(function(){ 
     var k = this.id; 
     var i = k.substr(3,4); 
     var dataString = "id="+i; 
     if(confirm("Do you really want to delete this villa?")){ 
      $.ajax({ 
      type: "GET", 
      url: "ajax_snippets/delete_villa.php", 
      data: dataString, 
      success: function(data) { 
        $("#villa"+i).remove(); 
        $("#msg").html(data); 
       } 
      }); 
     }else{} 
      return false; 
    }); 

    $("#all_villa .update").click(function(){ 
     var i = this.id; 
     var from = $("#from_date"+i).val(); 
     var to = $("#to_date"+i).val(); 
     var available = $("#available"+i).val(); 
     if(from == ""){ 
      alert("From Date is Required"); 
      return false; 
     } 
     if(to == ""){ 
      alert("To Date is Required"); 
      return false; 
     } 
     if(available == ""){ 
      alert("Availability is Required"); 
      return false; 
     } 
     var dataString = "from="+from+"&to="+to+"&id="+i+"&avlbl="+available; 
      $.ajax({ 
      type: "GET", 
      url: "ajax_snippets/update_villa.php", 
      data: dataString, 
      success: function(data) { 
        $("#msg").html(data); 
        $("#villa_name").val(''); 
        $("#villa_desp").val(''); 
        $("#all_villa").load("ajax_snippets/all_villa.php"); 
       } 
      });    
      return false; 
    }); 

谁能告诉我在哪里我做出了错误的转弯

感谢

+0

哟其他人在.delete点击是毫无意义的:),只是所以你知道,不是粗鲁 – Val 2011-02-28 12:25:11

+0

'.click'应该与'.live'作为它的一个动态元素 – Val 2011-02-28 12:25:55

回答

0

我添加了下面一行,它工作正常,希望这会帮助别人

$("#villa_tbl").load("ajaxsnippets/all_villa.php",{noncache: new Date().getTime()},function(){}); 
0

添加cache: false,到你的Ajax参数

+0

添加它,但没有运气,相同的结果 – Mujahid 2011-02-28 12:24:15

+0

http:///api.jquery.com/live/看看 – benhowdle89 2011-02-28 12:25:24

+0

@mujahid,这是否有效? – benhowdle89 2011-02-28 12:39:45