我有一个带有'的字符串。在里面:
<a href="#" onclick="if (confirm('... ' ...')) { document.exampleFormName.submit(); }">example link text</a>
不幸的是,这似乎不起作用。 Firebug在参数列表&#34;之后说&#34; SyntaxError:missing)并且您可以看到HTML实体已被&#39;。
替换我该怎么做才能避免这个问题?
答案 0 :(得分:5)
像XD那样写作并不漂亮。
<a href="#" onclick="if (confirm('... ' ...')) { document.exampleFormName.submit(); }">example link text</a>
使用功能
更好<script>
function foo() {
if (confirm("...' ...")) { document.exampleFormName.submit(); }
return false; // disable the link
}
</script>
<a href='#' onclick='return foo()'>example link text</a>
但也许就是我......
答案 1 :(得分:3)
你应该逃避引用。不使用html实体。 在''字符串中,您使用\'来转义单引号。
详细了解转义字符:https://mathiasbynens.be/notes/javascript-escapes
<a href="#" onclick="if (confirm('... \' ...')) { document.exampleFormName.submit(); }">example link text</a>
答案 2 :(得分:1)
试试这个
<a href='#' onclick='if (confirm("... ' ..."))
{
document.exampleFormName.submit();
}'> example link text
</a>
因为&#34;#039&#34;代表单引号所以(&#39; ...&#39; ...&#39;)在您之前的代码中会因为这个原因而失败