【问题标题】:Don't send default selected option value不要发送默认选择的选项值
【发布时间】:2020-11-09 19:45:38
【问题描述】:

我正在创建一个自定义搜索表单,并且我有这个带有第一个选项的代码

<select name="something">
    <option selected>Choose</option>
    <option value="a">A</option>
    <option value="b">B</option>
    <option value="c">C</option>
</select>

<select name="something2">
    <option selected>Choose</option>
    <option value="a">A</option>
    <option value="b">B</option>
    <option value="c">C</option>
</select>

如果我从第二个选择选项中仅选择某些内容,这就是我在 url 中得到的内容。

?s=&something=ChooseB&something2=B

表单是否可以不发送此“选择”值?可以使用 Html 完成还是必须使用 Jquery?如果重要的话,我会在 Wordpress 中执行此操作。

【问题讨论】:

    标签: jquery html wordpress


    【解决方案1】:

    试试这个:

    <select name="something">
    <option value="">Choose</option>
    <option value="a">A</option>
    <option value="b">B</option>
    <option value="c">C</option>
    </select>
    
    <select name="something2">
    <option value="">Choose</option>
    <option value="a">A</option>
    <option value="b">B</option>
    <option value="c">C</option>
    </select>
    

    【讨论】:

      【解决方案2】:

      不,这是不可能的,因为“选择”也是一个选项。 一个条件是可以的,先写html代码,把choose option的值设置为空。

      <form  name="myform" >
      <select id="ddlViewBy">
      <option selected  value="">Choose</option>
              <option value ="A">A</option>
               <option value ="B">B</option>
              <option value ="C">C</option>
              <option value ="D">D</option>
      </select>
      <input type="submit" />
      </form>
      

      然后添加这个javascript代码,如果select选项是空的,这个代码返回false并且不提交表单。

      <script>
         document.myform.onsubmit = function()
         {
      
           var e = document.getElementById("ddlViewBy");
           var strUser = e.options[e.selectedIndex].value;
           if((strUser)=="")
           {
             return false;
           } else { 
            return true;
           }
         }
      </script>
      

      或者很简单,你可以做到这一点

      <select name="something">
      <option value="">Choose</option>
      <option value="a">A</option>
      <option value="b">B</option>
      <option value="c">C</option>
      </select>
      
      <select name="something2">
      <option value="">Choose</option>
      <option value="a">A</option>
      <option value="b">B</option>
      <option value="c">C</option>
      </select>
      

      【讨论】:

        【解决方案3】:

        只需在值中留一个空格。喜欢价值=“”。这行得通。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-01-06
          • 2017-12-18
          • 1970-01-01
          • 2016-12-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多