我想更改以下 onclick 事件,从:
view_tree_element('subscription','45592063',1);
focusit('1_45592063',true)
至
onclick="show_dialog('feed_info_dialog',{subscription_id: 45592063}
即从原始onclick事件中获取数字45592063,
将其存储在变量中并将锚点更改为 show_dialog 事件
我该怎么做?
我想更改以下 onclick 事件,从:
view_tree_element('subscription','45592063',1);
focusit('1_45592063',true)
至
onclick="show_dialog('feed_info_dialog',{subscription_id: 45592063}
即从原始onclick事件中获取数字45592063,
将其存储在变量中并将锚点更改为 show_dialog 事件
我该怎么做?
看看这个。如果有,它会替换 onclick 处理程序。onc
您可以在var中添加“订阅”是否存在的测试
我将 ID 存储在链接本身的属性中
var re = /'subscription','(\d+)'/; // a number in quotes after 'subscription',
window.onload=function() { // or addEventListener
var links = document.querySelectorAll("a[onclick]");
for (var i=0; i<links.length;i++) {
var onc = links[i].onclick.toString();
if (onc) {
var id = onc.match(re);
if (id) { // something found
links[i].setAttribute("sub-id",id[1]);
links[i].onclick = function() {
show_dialog('feed_info_dialog',{subscription_id: this.getAttribute("sub-id")});
return false; // cancel link
}
}
}
}
}
// this will of course be YOUR show_dialog
function show_dialog(a,b) {
console.log(a,b);
}
<a href="#" onclick="view_tree_element('subscription','45592063',1);
focusit('1_45592063',true)">Click</a><br/>
<a href="#">No onClick</a><br/>
<a href="#" onclick="alert('subscription','',1)">Click - no id</a><br/>
<a href="#" onclick="view_tree_element('subscription','55592063',1);
focusit('1_55592063',true)">Click</a>