我环顾四周,之前没有人问过这个问题。
我有一个选择框,如下所示:
<select onchange="change()">
<option value="" selected>Option 1</option>
<option value="30">Option 2</option>
<option value="90">Option 3</option>
</select>
我想添加另一个选项...
<option value="custom">Option 4</option>
...这时候选择(点击)一个提示框会弹出要求用户在多个输入(的情况下30或90没有可行的选择,因为在该选项的值),以取代期权的价值。
<script>
function change() {
if(value == "custom") {
value = prompt("Please enter a new number:", "60");
}
}
</script>
我想知道最好的方法是使用普通的旧javascript-如果需要的话,我将使用jQuery。
有任何想法吗?一个例子也很好。
看一下这段代码。我认为这是您要尝试执行的操作:
的HTML
<select id="optionvals" onclick="change()">
<option value="" selected>Option 1</option>
<option value="30">Option 2</option>
<option value="90">Option 3</option>
<option value="custom">Option 4</option>
</select>
JS
function change() {
var oItem = document.getElementById('optionvals');
var value = oItem.options[oItem.selectedIndex].value;
if(value == "custom") {
alert("you've clicked b");
value = prompt("Please enter a new number:", "60");
oItem.options[oItem.selectedIndex].value = value;
console.log(oItem.options[oItem.selectedIndex].value)
}
}
这样做是提示你只有在选项选择的值的变化custom
。然后,在选择自定义值之后,它将把该custom
option元素的值重写为您刚刚在提示中输入的值。分配新值后,我记录了该值,以向您显示它正在工作。
这是一个小提琴:https : //jsfiddle.net/ng7xvy05/
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句