好的,我知道如何在文本框中设置默认值:
<input type='text' size="2" name="QuantityAlbum1" id="QuantityAlbum1" value='1' onblur="chkValue('album1', this.value)"/>
<input type='text' size="2" name="QuantityAlbum2" id="QuantityAlbum2" value="1" onblur="chkValue('album2', this.value)"/>
所以说我把第一个文本框的值改为3,它调用我的方法给出一个新的价格,但是在我的方法中我想检查第二个项目是否有数量,如果它确实将它附加到现有价格,所以这是我的逻辑:
function newPriceTotal(chkObject, quantity){
var newPrice=0;
var albumQ1 = document.getElementById("QuantityAlbum1").innerHTML;
var albumQ2 = document.getElementById("QuantityAlbum2").innerHTML;
switch (chkObject)
{
case "album1":
{
newPrice = 4.99 * Number(quantity);
if (albumQ2 != "")
{
newPrice = newPrice + (8.99 * albumQ2)
}
break;
}
} //end of switch
return newPrice;
}
所以在我到达之前我没有问题:
if (albumQ2 != "")
当它到达此处时,它返回并清空字符串,即使默认值设置为1并且它在文本框中显示默认值1。
任何人都可以解释为什么会发生这种情况以及如何解决这个问题?
答案 0 :(得分:0)
您可以使用 .value 代替 .innerHTML 。