我是javascript的新手,我正在尝试填充文本框,以便在选择dropdownList时动态更改其值。我的代码能够成功编译和运行,但文本框中没有任何内容。
我将不胜感激。
谢谢。
*附件是我的代码
<body>
<select id="dropdownList" name="dropdownList" onchange="getSelectValue();">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
</select>
<input type="text" id="price" value="" disabled> //I'm trying to change this value
<br>
<script>
function getSelectValue() {
var selectedValue = document.getElementById("dropdownList").value;
if(selectedValue.equals("Volvo")) {
document.getElementById("price").value = "4.50";
} else {
document.getElementById("price").value = "3.50";
}
}
</script>
</body>
答案 0 :(得分:0)
试试这个
selectedValue.equals
不是您使用if(selectedValue == 'volvo')
代替if(selectedValue.equals("Volvo"))
的JavaScript函数。
此外,选择框的值为volvo
而不是Volvo
。
<script>
function getSelectValue() {
var selectedValue = document.getElementById("dropdownList").value;
if(selectedValue == 'volvo') {
document.getElementById("price").value = "4.50";
} else {
document.getElementById("price").value = "3.50";
}
}
</script>
答案 1 :(得分:0)
请检查一下。
<script>
function getSelectValue() {
var selectedValue = document.getElementById("dropdownList").value;
console.log(selectedValue);
if(selectedValue==="volvo") {
document.getElementById("price").value = "4.50";
} else {
document.getElementById("price").value = "3.50";
}
}
</script>
答案 2 :(得分:0)
比较时使用===
,而不是.equals
。
套管很重要。如果option
值为'volvo'
,请不要对'Volvo'
进行测试。
使用内联事件处理程序是一种不好的做法,导致代码性能差,难以管理的代码。请认真考虑使用JavaScript附加您的活动,例如:https://developer.mozilla.org/en/DOM/element.addEventListener
const select = document.querySelector('#dropdownList')
select.addEventListener('change', getSelectValue);
function getSelectValue() {
var selectedValue = select.value;
if (selectedValue === "volvo") {
document.getElementById("price").value = "4.50";
} else {
document.getElementById("price").value = "3.50";
}
}
getSelectValue();
&#13;
<select id="dropdownList" name="dropdownList">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
</select>
<input type="text" id="price" value="" disabled>
&#13;