如果用户未能从特定的下拉菜单中做出选择,我将使用以下代码触发警报。
<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?
答案 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;
}
示例代码
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;