規則是,id
應該是不同的,你對所有span元素使用相同的initials
id。你可以給他們不同的ID,並嘗試這樣的:
document.getElementById('initials1').innerText= i.value;
document.getElementById('initials2').innerText= i.value;
document.getElementById('initials3').innerText= i.value;
document.getElementById('initials4').innerText= i.value;
所以,你可以修改你的HTML這樣的:
<span id="initials1">name</span>
<br />
<span id="initials2">name</span>
<br />
<span id="initials3">name</span>
<br />
<span id="initials4">name</span>
而且
<form>
<input id="i" value="My_Name">
<input type="button" value="Enter" onClick="doIt();">
</form>
JS:
function doIt(){
document.getElementById('initials1').innerText= i.value;
document.getElementById('initials2').innerText= i.value;
document.getElementById('initials3').innerText= i.value;
document.getElementById('initials4').innerText= i.value;
}
如果你不想使用ID,您可以使用getElementsByTagName
和改變功能是這樣的:
function doIt(){
var spans = document.getElementsByTagName('span');
for(var i = 0; i < spans.length; i++){
spans[i].innerText = document.getElementById('i').value;
}
}
首先感謝您快速的答案。我知道ID可能會導致問題,而有關使用類的問題。不幸的是,我只能使用第一個例子。我不想走這條路線,因爲當我開始越來越多時(比如1,首字母2,首字母3 ...),將會非常麻煩。 我不認爲其他人在IE7中工作,getElementsByTagName,getElementsByClassName,getElementsByName。 請幫忙。謝謝。 – user996248
希望得到一些澄清。我很接近完成這一點。我不知道爲什麼它不工作,除非一些JavaScript標籤無法在IE7中工作。 – user996248