Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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
Html 如果未选择dropwdown,则提交时不发送GET变量_Html_Forms_Drop Down Menu_Get_Submit - Fatal编程技术网

Html 如果未选择dropwdown,则提交时不发送GET变量

Html 如果未选择dropwdown,则提交时不发送GET变量,html,forms,drop-down-menu,get,submit,Html,Forms,Drop Down Menu,Get,Submit,我有一个表单,用于过滤只包含下拉列表的搜索结果。我使用GET而不是post,这样结果就可以很容易地与URL共享 <form action="" name='filter' method="GET"> <select name="Make" id="Make"> <option selected="selected" value ="nothing">All</option>

我有一个表单,用于过滤只包含下拉列表的搜索结果。我使用GET而不是post,这样结果就可以很容易地与URL共享

    <form action="" name='filter' method="GET">
      <select name="Make" id="Make">
          <option selected="selected" value ="nothing">All</option>             
          <option  value="Toyota">Toyota</option>           
          <option value="Honda">Honda</option>
      </select>
      <input type="submit" value="Filter">
    </form>

全部的
丰田
本田
如果用户不更改选择,它将提交get变量Make的值“nothing”,则与现在一样。它们有多个下拉列表,与此相同,适用于车型年款等

如果不使用Make变量,它是否可能不会显示在URL中


现在,如果提交该代码,它将显示website.com/?Make=nothing。我尝试删除该值,然后它显示website.com/?Make=All。如果选择了“全部”,我不想在URL中显示make。这可能吗?

您没有提交按钮:)
您可以添加一个在提交时运行的JS,并检查
“Make”
的值,如果它是
“nothing”
,只需执行一个简单的重定向,而不是提交表单。比如:

var e = document.getElementById("Make");
var val = e.options[e.selectedIndex].value;
if (val === 'nothing'){
  window.location = "http://www.google.com/"
}

我简化了代码,忘了添加提交按钮。我将编辑主要帖子。没有JS就没有办法做到这一点吗?你可以用jQuery做同样的事情,或者,将表单的方法更改为
POST
,那么它在URL中就根本不可见了