重新订购提交url上的表单字段
Re-order form fields on submit url
我有一个get表单,其中包含几个可见和隐藏的输入字段。提交表单时,选定的文件及其值会按照它们在表单中的放置顺序附加到url中。有没有办法使用jQuery重新排列url中的参数?请注意,出于可用性的原因,我不能对表单本身的元素进行重新排序。
我知道这引出了一个问题"我为什么要这么做?",但原因是我将访问一个静态页面,所以参数的顺序必须与它们在静态页面url中的顺序完全相同。例如,我的表单返回一个url:
http://someurl?names=comm&search=all&type=list
而静态页面有一个url:
http://someurl?search=all&type=list&names=comm
这里有一个简化的示例:
<form id="search_form" method="get" action="http://www.cbif.gc.ca/pls/pp/ppack.jump" >
<h2>Choose which names you want to be displayed</h2>
<select name="names">
<option value="comm">Common names</option>
<option value="sci">Scientific names</option>
</select>
<h2>Choose how you want to view the results</h2>
<input type="radio" name="search" value="all" id="complete" checked = "checked" />
<label for="complete" id="completeLabel">Complete list</label>
<br/>
<input type="radio" name="p_null" value="house" id="house" />
<label for="house" id="houseLabel">House plants only</label>
<br/>
<input type="radio" name="p_null" value="illust" id="illustrat" />
<label for="illustrat" id="illustratLabel">Plants with Illustrations</label>
<br/>
<input type="hidden" name="type" value="list" />
<input type="submit" value="Submit" />
</form>
我可以使用$(#search_form).serializeArray()来获取具有值的表单字段,并按我想要的方式按摩数组,但我不知道如何将其设置回去,即修改序列化的值,以便提交的url具有我的参数顺序。我甚至不确定这是否是正确的做法,所以任何建议都将不胜感激。
一种快速的方法可能是在按下提交按钮后对实际表单元素进行重新排序,同时隐藏表单,以免用户看到它。
另一种方法是让所有可见的表单元素都没有名称,并在提交时按照您喜欢的顺序将所有数据传输到隐藏的输入字段。
但在这种情况下,由于数据非常简单(无需转义),您还可以在每次表单元素更改时将所需的URL组合为字符串,并将其作为提交按钮的href,这样您就不会真正提交,而只是遵循链接。
相关文章:
- 通过单击动态加载的表中同一行的另一个字段来更新一行的字段
- 添加和删除隐藏字段数组中的值,而不提交表单
- 单击鼠标,用MySQL数据填充html表单输入字段
- 带有条件字段的PHP表单
- 验证PDF表单中的字段
- HTML提交表单,同时包含空字段检查和按钮隐藏
- 在表单中的输入字段上提交事件
- 当所有输入文本字段都为空时,禁止表单提交,但当jquery中的任何字段不为空时允许提交
- 表单输入字段随着溢出的文本而增长
- 如何将onChange方法添加到ExtJS 4表单中的所有字段(textField)中
- 尝试使用名称访问表中字段的日期选取器时出现问题
- Javascript 表单 - 字段不是必需的
- 单击按钮时更改数据库表的字段值
- 数据表将字段值关联到按钮,而 ajax 填充表
- 返回数据表输入字段
- 更改附加表行字段jQuery的名称
- Angularjs表单/字段验证使用JavaScript函数,无需指令
- 仅在Firefox中,表脱离字段集边界
- 如何在表单提交后使用JQuery从附加到HTML表的字段中获取$_POST数组中的值
- 什么's提交表单后,从post数组中动态附加的表行字段中获取值的问题