Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何让用户选择下拉框选项?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何让用户选择下拉框选项?

Javascript 如何让用户选择下拉框选项?,javascript,jquery,html,Javascript,Jquery,Html,我使用下面的代码实现一个必需的下拉框。唯一的区别是,我的应用程序中下拉框的代码位于一个新页面中,该页面将弹出 问题是,一旦用户选择了任何选项,包括没有值的选项,表单就会被提交 第1页 <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate /1.9/jquery.validate.js"

我使用下面的代码实现一个必需的下拉框。唯一的区别是,我的应用程序中下拉框的代码位于一个新页面中,该页面将弹出

问题是,一旦用户选择了任何选项,包括没有值的选项,表单就会被提交

第1页

   <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate
                                                         /1.9/jquery.validate.js"
                                                        </script>
   <script type="text/javascript">

          $("#everything").validate({
              messages: {
                  dd1: {
                     required: "Please select an option from the list, if 
                                none are appropriate please select 'Other'"
                }
            }
          });
          function popup(){
             document.getElementById("mydropbox").style.display = "Block";
              >> send request to server to show the Page 2 in body of mydropbox <<
             return false;
          }
   </script>

</head>
<body>

    <a href="" OnClick="return popup()">popup</a>

    <div id="mydropbox"></div>
...  
</body>
</html>
>向服务器发送请求,在mydropbox主体中显示第2页将添加到元素中。这至少在现代浏览器中是可行的

如果用户选择的选项值为空(如本例中的“无”选项),它会提醒用户。当然,您也必须进行服务器端验证,因为您不能依赖于此。

HTML

<input type="submit" id="sbt" /> //added id to the submit button sbt

从表单中删除submit按钮并使用

仅当dropdownlist值更改时,才会提交表单

<select onchange="this.form.submit()">
    ...
</select>

...

然后,如果用户选择无值选项,即使它被提交。@TimNorman no
none
值是
默认值,因为它位于
顶部<如果用户选择的值不是
none
,则会触发code>onchange
事件,如果值从
none
更改为任何其他值,则会提交表单。也请检查演示谢谢,但我需要他们点击提交按钮提交form@TimNorman添加了更新的演示代码,用于提交按钮
$('#sbt').click(function (e) {
    e.preventDefault(); //stop form submit
    if ($('#dd1 option:selected').text() != 'None') {
        $('#everything').trigger('submit'); // if selected text not = to None then trigger form submit.
    }
});
<select onchange="this.form.submit()">
    ...
</select>