我有一个练习,我需要显示项目,价格,数量的价格等...我很难将价格乘以数量。下面是我的代码,其中包含我正在显示的输入和选项,以及下面的脚本函数,非常感谢帮助!:
<body>
<label>Choose Item</label>
<select onChange="getPrice(this)">
<option></option>
<option>Tomatoes</option>
<option>Lettuce</option>
<option>Potato</option>
<option>Carrots</option>
<option>Artichoke</option>
</select>
<br/>
<label>Price</label>
<input type="text" id="price" />
<br/>
<label>Quantity</label>
<select onChange="getFull(this)">
<option></option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
<br />
<label>Total $</label>
<input type="text" id="quantityPrice" />
<script type="text/javascript">
var veggy = {};
veggy ["Tomatoes"] = 5.99
veggy ["Lettuce"] = 7.66
veggy ["Potato"] = 4.52
veggy ["Carrots"] = 2.13
veggy ["Artichoke"] = 10.58
function getPrice(select) {
document.getElementById("price").value = veggy[select.value];
}
var quantity = {};
quantity ["1"] = 1
quantity ["2"] = 2
quantity ["3"] = 3
quantity ["4"] = 4
quantity ["5"] = 5
function getFull(select) {
document.getElementById("quantityPrice").value = (quantity[select.value] * veggy [select.value]);
}
</script>
</body>
</html>
答案 0 :(得分:0)
将数字转换为字符串值。
document.getElementById("quantityPrice").value =''+ (quantity[select.value] * veggy [select.value]);
答案 1 :(得分:0)
问题是因为您尝试使用veggy
选择的键从price
对象获取值。
function getFull(select) {
document.getElementById("quantityPrice").value = (quantity[select.value] * veggy [select.value]);
}
您在此处传递quanntity
select的引用,但您必须获取price
表单Item
对象。
只需为您的第一个Id
提供select
的ChooseItems。
<select id="veggy" onChange="getPrice(this)">
getFull
就像这样
function getFull(select) {
var vegSelect = document.getElementById('veggy');
document.getElementById("quantityPrice").value = (quantity[select.value] * (veggy[vegSelect.value]));
}