提醒不同的DropDowns?

时间:2017-05-04 11:37:01

标签: javascript jquery

如果用户未能从特定的下拉菜单中做出选择,我将使用以下代码触发警报。

  <script>
          function selection(){    
            var sel = document.getElementById('product_configure_variants');    
            var selectedText = sel.options[sel.selectedIndex].text;
            if (selectedText.startsWith("Make a choice...")) {
               alert('PLEASE MAKE ALL ORDER FORM SELECTIONS');
               return false;
            }
            return true;
         }
    </script> 

上面的代码工作得很好。但是现在我想对其他下拉菜单做同样的事情,但这给我带来了一个问题。这些下拉列表的ID有所不同。 ID如下所示:id="product_configure_custom_2197256" ID的数量因下拉而异。它们是由网店后台生成的。

如何使用上述代码以及这些不同的下拉ID?

1 个答案:

答案 0 :(得分:1)

你可以在函数中传递id。如果相同的元素id,则在html中应用函数selection(this.id),否则其他元素id尝试selection(thatelementid)

function selection(id){    
            var sel = document.getElementById(id);    
            var selectedText = sel.options[sel.selectedIndex].text;
            if (selectedText.startsWith("Make a choice...")) {
               alert('PLEASE MAKE ALL ORDER FORM SELECTIONS');
               return false;
            }
            return true;
         }

示例代码

&#13;
&#13;
function selection(id){    
      console.log(id)
                var sel = document.getElementById(id);    
                var selectedText = sel.options[sel.selectedIndex].text;
                //f (selectedText.startsWith("Make a choice...")) {
                   alert('PLEASE MAKE ALL ORDER FORM SELECTIONS');
                   return false;
                //}
                return true
                
                }
&#13;
<select id="check1" onchange="selection(this.id)">
<option>one</option>
<option>two</option>
<option>three</option>
</select>
<select id="check2" onchange="selection(this.id)">
<option>one</option>
<option>two</option>
<option>three</option>
</select>
<select id="check3" onchange="selection(this.id)">
<option>one</option>
<option>two</option>
<option>three</option>
</select>
&#13;
&#13;
&#13;