关于Jquery动态添加onclick属性

时间:2013-08-08 11:30:35

标签: php jquery

单击下面的链接,我想要的是更改onclick函数,如onclick =“linkSubCategory(1,\'people \',\'1 \',\'peopleLink \');”这是将第三个属性从0更改为1。

<a href="#" id="peopleLink" onclick="linkSubCategory(1, \'people\', \'0\', \'peopleLink\');" style="display: inline-block;"><img src="images/icons/group.png"></a>

对于我的上述要求,我使用下面的代码,但它不起作用。请建议我实现我的要求。

function linkSubCategory(divID, divName, chkVal, linkID) {
$("#"+linkID).removeAttr("onclick");
        $("#"+linkID).attr("onclick", "linkSubCategory("+divID+", '"+divName+"', '1', '"+ linkID +"')");}

1 个答案:

答案 0 :(得分:1)

我看待事物的方式:

<a href="#" id="peopleLink" data-divid="1" data-divname="people" data-chkval="0" class="linkSubCategory" ></a>

<强>的jQuery

$('.linkSubCategory').click(function(){
   linkSubCategory($(this).data('divid'), $(this).data('divname'), $(this).data('chkval'), this.id);
   $(this).data('chkval',1);
});

这样您就不需要更改事件处理程序了。因为imo,更改处理程序意味着你想从根本上改变它的工作方式,但在这里你只需要更改一个参数。