仅在选择特殊值时才更改下拉列表

时间:2013-11-05 17:10:40

标签: javascript html forms select

我有一个带有几个选项的下拉列表(例如7)。如果选择了最后3个选项之一,则应提交表单。在前4个选项中,不应提交表格。

onChange="this.form.submit()"无效 - 每次更改都会提交表单......

有什么想法吗?

提前多多感谢

HIAS

3 个答案:

答案 0 :(得分:0)

做...

onchange="checkVal();"

然后在你的JS中创建函数......

function checkVal{
    var e = document.getElementById("FORMID");
    var selectedVal = e.options[e.selectedIndex].value;
    if (selectedVal == val4 || selectedVal == val5 || selectedVal == val6){
         e.submit();
    }
}

如果您的选项设置为值为<option val="4">number 4</option>,则此功能可用。如果不是,您必须使用.text代替.value来获取selectedVal,然后比较选项内的文字

答案 1 :(得分:0)

如果你想要的话,只需检查select元素的值,然后告诉表单提交自己。

演示http://jsfiddle.net/Q6FUM/

var f = document.forms['mf'], s= document.getElementById('ss');

s.onchange = function() {
    if (s.value==3) f.submit();
}

答案 2 :(得分:0)

非常感谢。它适用于此代码:

function checkVal() {
  var f = document.getElementById("FORM-ID");
  var e = document.getElementById("SELECT-ID");
  var selectedVal = e.options[e.selectedIndex].value;
  if (selectedVal > 4) {
    f.submit();
  }
}
相关问题