下面是一個java腳本函數和用於調用此函數的單擊項目的html。通過使用警報,我可以知道傳入函數的四個值在使用Firefox時未定義,但在使用IE時有效。請讓我知道是否有人看到錯誤以及如何正確傳遞這些值。謝謝。javascript函數 - 傳遞給函數的變量適用於IE,但不適用於Firefox
function LoadChild(lnEntityID, lnEntityCat, FullExpand, EquipID) {
document.getElementById('dropTypes').disabled = false;
document.getElementById('dropTypes').style.background = "white";
DescStatus = 0;
alert('lnEntityCat : ' + lnEntityCat);
if (lnEntityCat == 0) {
alert('First if is hit');
PageMethods.LoadChild(lnEntityID, lnEntityCat, GLOBALEQUIPID, FullExpand, 0, 0, 1, LoadChildCallback);
}
else if (document.getElementById('img' + lnEntityID + lnEntityCat).canExpand == "true") {
if (document.getElementById('div' + lnEntityID + lnEntityCat).style.display == 'none') {
document.getElementById('div' + lnEntityID + lnEntityCat).style.display = 'block';
document.getElementById('img' + lnEntityID + lnEntityCat).src = "../images/minus.gif"
PageMethods.LoadChild(lnEntityID, lnEntityCat, GLOBALEQUIPID, FullExpand, 0, 0, 1, LoadChildCallback);
}
else {
document.getElementById('div' + lnEntityID + lnEntityCat).style.display = 'none';
document.getElementById('img' + lnEntityID + lnEntityCat).src = "../images/plus.gif"
}
}
}
這裏是由產生點擊它時,該項目的服務器端代碼生成的動態HTML,來電loadChild
<img canExpand="true" style="cursor:hand" id="img72635" src="../images/plus.gif" EntityID="726" EntityCat="35" onclick="LoadChild(this.EntityID, this.EntityCat, 0, this.lnEquip);">
考慮到你試圖使用元素屬性的四個參數中的三個,爲什麼不只是傳遞一個對元素的引用,而是將函數中的值取出?如果您還需要添加屬性,則使代碼更容易擴展。 –