-1

我有以下标记,我无法逃避 onclick 事件的 ajax 部分,它是动态附加的内容。

    <a class="_button" onclick="$('#add ul')
.append('<li><div class=\'error\'>
<img src=\'img/spinner.gif\' class=\'ajax_progress\' /><span></span></div></div>
<b class=\'bg\'>Prénom, Nom</b> <input type=\'text\'  onclick=\'$(this).autocomplete(autocomp_opt);\' 
class=\'_input _input_text\' style=\'width: 200px;height:24px\' value=\'\' /> 
<b class=\'bg\'>Montant</b> 
<input type=\'text\' id=\'\' 
class=\'_input _input_text _int\' 
style=\'height:24px\' value=\'\' /> € 
<input type=\'submit\' class=\'_submit\' cs_user_id=\'\'  
onclick=\'$.ajax({type:\'POST\',url:\'\'})\'  
value=\'Ajouter\'  /></li>')" 
style="float: left;margin-top: 0px;margin-left: 5px;">Ajouter un associé</a>

返回错误的部分是这个:

onclick=\'$.ajax({type:\'POST\',url:\'\'})\'


syntax error
[Break On This Error]   

$.ajax({type:

所以我想这是因为我在单引号内有单引号,但是在这种情况下有没有办法转义引号?

4

2 回答 2

3

很难阅读的圣牛。不要对自己这样做。创建一个单独的 JS 文件并添加以下内容:

$("input[type=submit]").on('click', function () {
   $.ajax({type: "POST", url: ""});
});

在另一个 JS 文件中,您可以使用所需的所有引号。

于 2013-01-21T16:27:05.270 回答
0

如果您希望动态添加这些 LI,您可能希望向文档添加一个事件侦听器,以处理特定选择器上的所有单击事件。这是您可以尝试的示例:

$(document).on("click", "._input ._input_text", function(e) {$(e.target).autocomplete(autocomp_opt);}); 

这需要进入您的 DOM 就绪函数,它会自动将 click 事件处理程序添加到与选择器匹配的对象中。

于 2013-01-21T16:47:18.053 回答