Mo.*_*Mo. 3 javascript jquery jquery-ui
如何添加onclick='openLightB('remove_ddi',500);'到<a>open</a>使用jQuery功能
我现在的代码是这样的
$(".remove_row").live("click", function(){
$(".ddi tr:eq(2) td:eq(5) a").replaceWith("<a onclick='openLightB('remove_ddi',500);'>Remove</a>");
});
Run Code Online (Sandbox Code Playgroud)
不幸的是结果就是这样
<a remove_ddi',500);'="" onclick="openLightB(">Remove</a>
Run Code Online (Sandbox Code Playgroud)
如何让jquery使用.attr()来处理转义引号:
$(".remove_row").live("click", function(){
$(".ddi tr:eq(2) td:eq(5) a").attr('onclick', "openLightB('remove_ddi',500);");
});
Run Code Online (Sandbox Code Playgroud)
BTW,.live()已弃用,可以在将来的任何时候从库中删除.您应该考虑使用.delegate()或.on()进行事件委派.
你可以修改你的代码,如下所示,
$(".remove_row").live("click", function(){
$(".ddi tr:eq(2) td:eq(5) a")
.replaceWith("<a onclick=\'openLightB(\'remove_ddi\',500);\'>Remove</a>");
});
Run Code Online (Sandbox Code Playgroud)
或简化它,
$(".remove_row").live("click", function(){
$(".ddi tr:eq(2) td:eq(5) a").click (function () {
$(this).text('Remove');
openLightB('remove_ddi',500);
});
});
Run Code Online (Sandbox Code Playgroud)
此外,如果您使用的是jQuery 1.7,那么请使用 .on
//replace <.remove_row container> with .remove_row container
$('<.remove_row container>').on("click", '.remove_row', function(){
$(".ddi tr:eq(2) td:eq(5) a").click (function () {
$(this).text('Remove');
openLightB('remove_ddi',500);
});
});
Run Code Online (Sandbox Code Playgroud)