选择另一个选项后如何使选择器开关工作?

时间:2019-01-19 14:26:58

标签: jquery html css

我有一个带有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()"来解决该问题

1 个答案:

答案 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;
    }
  });
});