У меня есть этот код. Я делал это в течение многих лет, но я озадачен результатом этого примера. Цель состоит в том, чтобы сделать текстовое поле видимым и поместить в него содержимое нажатого тега SPAN.
document.onclick = CaptureClickedElement;
function CaptureClickedElement(e)
{
var EventElement;
if(e==null)
EventElement = event.srcElement;// IE
else
EventElement = e.target;// Firefox
if( EventElement.tagName == "SPAN")
{
document.getElementById("divTXT").style.display="";
document.getElementById("txt").value = document.getElementById("Span1").innerHTML;
alert(document.getElementById("Span1").innerHTML)
}
}
Как ни странно, он показывает содержимое, но также показывает открывающие / закрывающие теги SPAN в конце. Если я сообщу о результатах, будет показано то же самое.
Пожалуйста, найдите прикрепленный снимок экрана здесь.
Кто-нибудь имеет представление о том, почему это происходит?
Спасибо!
Вот HTML-код (скопировано из комментариев mplungjan)
<style type="text/css">
#divOuter {
width: 100px;
height: 70px;
border: 1px solid blue;
float: left;
}
</style>
<body>
<div>
<form name="frm" method="post" action="">
<div id="divTXT" style="display:none">
<input type="text" id="txt" name="txt" value="" size="30" />
</div>
</form>
</div>
<div id="divOuter">
<span id="Span1">hi, this is a test.<span>
</div>
</body>