js表格点击事件

图片描述

谷歌下,多次点击td后会有错误 比如上图 点击input没问题 ie下都没问题  能来个人给我讲解下吗 

代码如下:`<html lang="en"><head>
<meta charset="UTF-8">
<title>Title</title>
<style> table{
    text-align:center;
    width:400px;
    height:100px;
    border:solid #000 1px; }
td,input{
    cursor: pointer;
}
td.selected{
    background-color:#E49B1A;
}
</style></head><body><table class="ftab">
<thead>
<tr><td></td><td>fruit</td><td>price</td><td>date</td></tr>
</thead>
<tbody>
<tr><td><input type="radio" name="fruit"></td><td>orangle</td><td>$10.00</td><td>2013-01-12</td></tr>
<tr><td class="selected"><input type="radio" checked name="fruit"></td><td class="selected">apple</td><td class="selected">$9.00</td><td class="selected">2013-01-22</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>tomato</td><td>$2.00</td><td>2013-04-23</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>banana</td><td>$1.00</td><td>2013-03-13</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>eggplant</td><td>$7.00</td><td>2013-05-12</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>orangle</td><td>$10.00</td><td>2013-01-12</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>apple</td><td>$9.00</td><td>2013-01-22</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>banana</td><td>$1.00</td><td>2013-03-13</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>tomato</td><td>$2.00</td><td>2013-04-23</td></tr>
<tr><td><input type="radio" name="fruit"></td><td>eggplant</td><td>$7.00</td><td>2013-05-12</td></tr>
</tbody></table><script src="https://cdn.bootcss.com/jquery/1.11.1-beta1/jquery.min.js"></script><script>$(document).ready(function(){$(".ftab tr:not(:first)").click(function(ev){
        var ev = ev || window.event;
        var target = ev.target || ev.srcElement;
        if(target.nodeName.toLowerCase() == 'input' || target.nodeName.toLowerCase() == 'td'){
            $(this).find("td").addClass("selected")
                .end().siblings().find("td").removeClass("selected");
            $(this).find("input:radio").attr("checked","checked");
        }
    });
});</script></body></html>`
阅读 2.9k
2 个回答

jq改变原有属性不要用attr,用prop

  $(this).find("input:radio").prop("checked","true");

最关键的地方你没有粘贴出来。。。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题