Javascript copy&从div到输入故障的符号

时间:2014-04-05 17:07:25

标签: javascript php html

我找不到这个问题的答案......

问题所在。将文本从DIV复制到输入(文本框)的Javascript无法将&复制为&,并将其复制为&。请参阅代码加示例。

我有以下代码(在不同的页面上,只是为了简化我把所有内容放在这里):

INPUT我希望复制文本。

<input name="artist" id="txtArtist" type="text" placeholder="Introduce the artist" />

从中复制文本的DIV。此数据从SQL数据库填充。

<div id="art0"><div onclick="copyText(0)">Mumford & Sons</div></div>'

失败的功能......

function copyText(rowID){
    var content = document.getElementById('art'+rowID).innerHTML.replace(/<\/?[^>]+(>|$)/g, "\n");
    document.getElementById("txtArtist").value = document.getElementById('art'+rowID).innerHTML;
    document.getElementById("txtArtist").value = content;
}

文本框中的预期结果:Mumford & Sons

文本框内的ACTUAL结果:Mumford &amp; Sons

请帮忙吗?

谢谢大家!!

1 个答案:

答案 0 :(得分:3)

使用.textContent代替.innerHTML

var content = document.getElementById('art'+rowID).textContent;

http://jsfiddle.net/4Tr5T/1/

请注意,IE 8及更低版本不支持.textContent,因此如果您非常不幸,请测试并使用.innerText

var prop = 'textContent' in document.body ? 'textContent' : 'innerText',
    content = document.getElementById('art'+rowID)[prop];

http://jsfiddle.net/4Tr5T/2/