这是我的代码。它适用于Firefox,Chrome,但不适用于ie7。
arr为每一行做出(数字+ 1)..
$("#div-id1 a").attr("onclick", function (arr) {
return "document.getElementById('row1').value+=" + arr;
});
$("#div-id2 a").attr("onclick", function (arr) {
return "document.getElementById('row2').value+=" + arr;
});
<input id="row1" type="text" name="row1" value="" />
<input id="row2" type="text" name="row2" value="" />
我的js代码介于此之间。
jQuery(function($){...code...});
我正在添加onclick,因为链接看起来像这样。
<a>Hello World</a>
代码输出为:
<a onclick="document.getElementById('row1').value+=1">Hello World</a>
有人能告诉我工作的例子吗?
答案 0 :(得分:4)
你做错了。
为onclick
属性添加函数会起作用吗?是的,在某些浏览器中,但你没有充分利用jQuery的规范化事件。设置点击事件的jQuery方法是使用click(fn)
,或bind('click', fn)
或live('click', fn)
此外,由于您没有显示脚本与HTML相关的位置,因此dom元素可能尚不存在。使用live
会将事件委托给文档,以便继续检测与选择器匹配的新元素。或者,您可以使用document ready
事件:
长篇:
jQuery(document).ready(function($){...code...});
简短形式:
jQuery(function($){...code...});
有关详细信息,请阅读jQuery api。
答案 1 :(得分:2)
将其放入$(document).ready(...
:
$(document).ready(function() {
$("#div-id1 a").attr("onclick", function (arr) {
return "document.getElementById('row1').value+=" + arr;
});
$("#div-id2 a").attr("onclick", function (arr) {
return "document.getElementById('row2').value+=" + arr;
});
});
答案 2 :(得分:2)
不要设置属性onclick - 将函数传递给jquery click函数
$("#div-id1 a").click( function () {
/* Code here */
});
你能进一步解释一下arr吗?您需要对代码进行一些修改,以使其与click而不是attr一起使用。