我有一个带有4个选项的选择器:1是默认设置,不包含在以后使用的switch
中。
当我选择另一个值(在我的情况下为“ 1”,因为我将其包含在switch
中)时,什么都没有发生。但是,如果我保留该选项并将value="1"
作为默认选项,则该开关将起作用并显示我的文本。
HTML:
<select id="select-forma">
<option value="11">-Alegeti Forma-</option>
<option value="1">Forma 1</option>
<option value="2">Forma 2</option>
<option value="3">Forma 3</option>
</select><br>
<h1 id="mp">Aveti nevoie de <span id="mpv">100</span> m2 folie</h1><br>
jQuery:
switch(parseInt(document.getElementById('select-forma').value)){
case 1:
document.getElementById('mp').style.display = 'block';
break;
如何使开关正常工作?
编辑:通过将switch
放在函数中并为选择器使用onchange = "function()"
来解决该问题
答案 0 :(得分:0)
您的代码现在可以运行了,但是我有个建议。您正在使用jQuery,它将使您的代码更简洁。
在您的开关中,计算返回的$(this).val()
值,而不是您输入的值。 $(this)
将引用您要对其应用change
事件的jQuery对象。然后,不要像使用长香草JS行那样将block
分配给css display
属性,而是像这样使用.show()
:
jQuery(document).ready(function($) {
$("#select-forma").change(function() {
switch($(this).val()) {
case 1:
$("#mp").show();
break;
}
});
});