点击列表中某行,弹出详情的需求比较常见。用jquey bind 点击事件时,传参不注意可能会导致点击每一行都是显示相同内容的情况,这大多数是因为传参没注意引起的问题。简易代码如下:
测试代码:
<html>
<head>
<script type=
"text/javascript"
src=
"/jquery/jquery.js"
></script>
<script type=
"text/javascript"
>
$(document).ready(
function
(){
var
bindText =
'AAA'
;
for
(
var
i=0;i<2;i++) {
$(
"#b"
+ i).bind(
"click"
, {
'bindText'
:bindText + i},
function
(e){
butClick(e);
});
}
});
function
butClick(e) {
alert(e.data.bindText);
}
</script>
</head>
<body>
<button id=
"b0"
>请点击这里0</button>
<button id=
"b1"
>请点击这里1</button>
</body>
</html>
本文介绍了一个常见的jQuery点击事件绑定中的误区,即在循环中为多个元素绑定点击事件时如何正确传递参数,以避免所有点击事件触发时返回相同的值。通过具体的示例代码展示了问题所在,并提供了解决方案。
3693

被折叠的 条评论
为什么被折叠?



