如何使用 jQuery 替换部分 onclick
属性/属性?在下面的示例中,我想将 delete_image
替换为 do_delete_image
:
示例 HTML
<a href="#" onclick="delete_image(1234)" >Delete Image</a>
我的尝试
jQuery('a').each(function(){
var action = $(this).prop('onclick').replace('delete_image','do_delete_image');
$(this).prop('onclick',action);
});
错误
Google Chrome 抛出此错误:
TypeError: Object function onclick(event) { delete_image(1234);return false; } has no method 'replace'
我怎样才能做到这一点? ps:这是一个设置为与其他人的代码一起使用的书签。
最佳答案
onclick
是表示处理click
事件的函数的属性。要获取和设置实际内容,请使用 attr
而不是 prop
。
或者,考虑将 delete_image
替换为 do_delete_image
,例如:
window.delete_image = window.do_delete_image;
如果需要包装原始函数,可以将其与闭包结合起来。
关于javascript - 如何使用 javascript/jQuery 替换 onclick 操作(使用正则表达式)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9900588/