jquery中的“非法字符”appendTo()

时间:2011-05-04 02:28:12

标签: jquery appendto illegal-characters

这是我的jquery appendTo()代码:

$('<li><a href="javascript:void (0)" onmousedown="document.getElementById('searchType_banner').value='p';">document</a></li>').appendTo('.wapper');
在萤火虫中,它提醒我一个错误,“失去了”在“onmousedown”位置的“参数列表”之后,有时它提醒我“非法人物”错误。但我不认为我错过任何“)”。< / p>

那么什么不应该出现在appendTo()或者我应该注意到appendTo()中。为什么上面的错误发生了,我该如何解决这个问题呢?

谢谢

3 个答案:

答案 0 :(得分:1)

如果你看一下你自己的Stack Overflow问题的语法高亮,我想你可以看到出了什么问题。注意字符串的结束位置。

以下是修复方法:

$('<li><a href="javascript:void (0)" onmousedown="document.getElementById(\'searchType_banner\').value=\'p\';">document</a></li>').appendTo('.wapper');

替代修复:

$('<li><a href="javascript:void (0)" onmousedown="document.getElementById(&quot;searchType_banner&quot;).value=&quot;p&quot;;">document</a></li>').appendTo('.wapper');

编辑:呃!您不应该仅为JavaScript使用锚元素。如果您愿意,可以使用<button>并将其设置为链接样式。这就是我写的:

$('<button>document</button>').mousedown(function(){
  $('#searchType_banner').val('p');
}).appendTo('.wapper');

答案 1 :(得分:1)

选择器本质上是一个字符串,所以你用单引号打破你的字符串。你需要逃脱它们。

$('<li><a href="javascript:void (0)" onmousedown="document.getElementById(\'searchType_banner\').value=\"p\";">document</a></li>').appendTo('.wapper');

答案 2 :(得分:0)

$('<a></a>').html('document').mousedown(function(){}).wrap('<li></li>').appendTo('.wapper');