我将表行传递给一个函数,该函数应该更新锚点上的onclick属性。
无论我尝试过什么,我都无法将其设置为新值。我可以看到它是jQuery选择锚点。但是当我在after之后发出警报时,onclick属性仍然指向相同的值而不是提供给函数的'url'参数:
function modifyTrEditUrl(tr, url) {
console.log(tr.find('td:eq(6) a')[0]);
tr.find('td:eq(6) a')
.attr('onclick', url); // I have tried
//.click(function(e){..}) way too!
console.log(tr.find('td:eq(6) a')[0]); //still the same value! :(
}
有任何建议吗?
答案 0 :(得分:1)
我不确定,但听起来您可能会将onClick属性与HREF属性混淆。单击链接时,将使用HREF属性中的URL。
onClick属性实际上用于触发Javascript内容。也就是说,如果你使用的是jQuery,你应该坚持使用bind
或live
函数(click
是一个包装器)。
答案 1 :(得分:1)
我不是jQuery(甚至是javascript)专家,但我想从你的代码中,你试图将onclick属性的值设置为url。
.attr('onclick', url);
我知道在标签中,应该为onclick属性分配一个javascript函数。我认为代码正在尝试创建像
这样的标签<a onclick=url>
我应该url是一个字符串对象。也许这就是错误的原因。
答案 2 :(得分:0)
使用.bind或.live,.live来进行后期绑定
答案 3 :(得分:0)
如何使用
tr.find('td:eq(6) a').attr('href', url);