jquery和data-attr在ie8中不起作用

use*_*131 0 html javascript jquery

这涉及一个表格,我一次显示5行.以下代码在firefox中100%完美运行.但是在ie8中,只能单击顶行以供editdiv显示.然而,在firefox中,我可以点击五行中的任何一行,并按照预期加载editdiv.

调用函数的php文件中的行:

echo "<td><a id=\"editjq\" href=\"#\" vid='".$vid."' t1='".$db->hscadd($t1)."' page='".$page."' flag='1')\">  [edit ]  </a></td>";
Run Code Online (Sandbox Code Playgroud)

功能:

$(document).ready(function() {
  $('a#editjq').click(function() {
    var petid = $(this).attr('vid');
    var t1 = $(this).attr('t1');
    var page = $(this).attr('page');
    var flag = $(this).attr('flag');
    $("#petdiv").hide(); 
    $.post("edit_lookup.php", {
      petid : petid,
      t1 : t1,
      page : page
    }, function(data){
     if (data.length>0){ 
       $("#editdiv").html(data); 
     } 
    });
    $(this).unbind(); 
    return false;
  }); 
});
Run Code Online (Sandbox Code Playgroud)

Phr*_*ogz 7

您是否生成了五行,每行都有一个具有相同id属性的锚?如果是这样,那就是你的问题.拥有多个具有相同元素的元素在语法上是非法的id.而不是id="editjq"使用class="editjq"$('a.editjq').click(...).