gpt4 book ai didi

javascript - 从 td 获取转义的 html 并将其作为值放入输入中

转载 作者:行者123 更新时间:2023-12-02 20:31:58 24 4
gpt4 key购买 nike

我有html

<table>
<tr><td id="cell">&lt;a href=&quot;&quot;&gt;Google.com&lt;/a&gt;</td></tr>
</table>

<div id="to"></div>

我有 JavaScript

$(document).ready(function() {
var html = '<input type="text" value="'+$("#cell").html()+'" />'
$("#to").append(html);
});

我不知道为什么,但是当执行这段代码时我只得到 <a href=在输入中。在 firebug 的检查器输入 html 中显示为 <input type="text" a&gt;="" &gt;google.com&lt;="" value="&lt;a href=" >如您所见,$quot;替换为 " - 这就是问题所在。

我尝试过使用.text()而不是.html() - 几乎相同的情况。

我的错误是什么?

谢谢。

最佳答案

您需要对值进行编码(在本例中通过 .val() 设置),而不是直接在字符串中使用它,如下所示:

$(document).ready(function() {
var html = $('<input type="text" />').val($("#cell").html());
$("#to").append(html);
});

You can see it in a demo here 。问题是 &quote; 被解码为 " 这使得你的 HTML 看起来像这样:

<input type="text" value="&lt;a href=""&gt;Google.com&lt;/a&gt;" />

您可以看到这如何让浏览器变得有点疯狂:)

关于javascript - 从 td 获取转义的 html 并将其作为值放入输入中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3967510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com