单击下面的链接时,我想要更改onclick="linkSubCategory(1,'''people''','''1''','''peoplineLink''');"之类的onclick函数,即将第三个属性从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 +"')");}
我看待事物的方式:
<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,更改处理程序意味着你想从根本上改变它的工作方式,但在这里你只需要更改一个参数。