2011-02-02 55 views
5

如果我有以下3个字段的表单:如何排除在提交表单的某些表单字段没有禁用领域

姓氏名字出生日期

当用户罢了所有3场,并提交您将获得URL

http: //fakeURL.php?firstName=Fred&lastName=Flintstone&DateOfBirth=2/5/1952 

然而,如果用户只在名字填写和出生日期,你会得到

http: //fakeURL.php?firstName=Fred&lastName=&DateOfBirth=2/5/1952 (where lastName has no value) 

如何实现

http: //fakeURL.php?firstName=Fred&DateOfBirth=2/5/1952 (where lastName and value are removed from the URL) 

我不想在使用的onsubmit禁用输入字段。有没有比禁用输入字段更好的方法?

请帮助...

+0

*为什么*你不想在“提交”处理程序中禁用该字段? – Pointy 2011-02-02 01:44:38

+0

为什么这个字段是空的?无论如何,您是否考虑过使用POST而不是GET,以便您的URL更清晰,并且更多的实现对访问者是隐藏的。 – Endophage 2011-02-02 01:45:13

回答

5

必须要么:

  1. 删除或提交它
  2. 不要提交表单,而不是之前禁止从表单中的重定向到一个URL你从表单自己
  3. 建设做一个AJAX请求,而不是让页面

阿丝从这些选项中,您不能通过GET提交此表单,而不会将所有输入变为URL的一部分。这是HTML和HTTP规范的一部分。

-1

您应该使用GET方法的表格只有当新的页面应该书签和传递。

既然你谈论你采取从用户输入(我想你也存储在数据库中或一些类似的永久存储的是输入),你应该使用POST代替

+0

告诉WordPress。 – XedinUnknown 2016-07-06 16:58:06

9

刚刚从输入元素中删除 “name” 属性 -

// exclude the inputId from the form collection 
$("#inputId").removeAttr('name'); 

享受!