3

这似乎比我见过的类似帖子复杂了一步:
在 js 函数中创建了以下行:

content.push("<input type='button' value='Use This Location' onclick='alert(" + result.location.y + "," + result.location.x + ")'/>");

结果是一个带有以下内容的按钮: onclick="alert(40.7445068,-73.9834671)"

但我希望结果是: onclick="alert('40.7445068,-73.9834671')"

或者..你知道..只是..但是它需要让警报显示文本,而不仅仅是第一个数字。

如何重新格式化原始块中的引号以实现这一点?

4

3 回答 3

1
content.push("<input type='button' value='Use This Location' onclick='alert(\"" +
result.location.y + ',' + result.location.x + "\")'/>");

编辑:修正了一些代码。

于 2012-06-20T19:20:30.837 回答
0

您应该能够添加转义的单引号(例如 \')

所以改变

onclick='alert(" + result.location.y + "," + result.location.x + ")'

onclick='alert(\'" + result.location.y + "," + result.location.x + "\')'

编辑:格式问题

于 2012-06-20T19:27:00.740 回答
0

非常感谢各位!您的输入(无意放置)导致了一个可行的解决方案: content.push('<input type="button" value="Use This Location" onclick="alert(&#39;'+ result.location.y + "," + result.location.x + '&#39;)" />');

由于它是 Javascript 中 HTML 中的 Javascript,我将 push 方法作为单引号而不是原来的双引号传递,然后我能够使 html 元素双引号和onclick单引号。然后我不得不使用&#39;而不是&#34这样我才能在 HTML 中插入一个特殊的单引号。

再次,非常感谢。所有评论都是解决问题的关键/我很感激!

于 2021-07-11T19:11:20.447 回答