URL-编码(JavaScript)方法=";获得;

URL-编码(JavaScript)方法=";获得;,javascript,html,forms,url,urlencode,Javascript,Html,Forms,Url,Urlencode,我有一个带有一些输入字段的表单(6)。当我点击提交按钮“我想格式化URL”时: /actionname?input1|input2|input3|input4|input5|input6 对于空值: /actionname?input1|input2||input4||input6 用户单击submit按钮时的时间戳 这可以通过javascript实现 谢谢 Chad这可以通过javascript完成,但我不明白你为什么要这么做。您必须使用表单的onsubmit事件,循环遍历表单元素,将每个

我有一个带有一些输入字段的表单(6)。当我点击提交按钮“我想格式化URL”时:

/actionname?input1|input2|input3|input4|input5|input6
对于空值:

/actionname?input1|input2||input4||input6
用户单击submit按钮时的时间戳

这可以通过javascript实现

谢谢


Chad

这可以通过javascript完成,但我不明白你为什么要这么做。您必须使用表单的onsubmit事件,循环遍历表单元素,将每个值以您提供的格式附加到url字符串,然后将
window.location
设置为该url字符串


对于禁用javascript的用户,表单仍将以“正确”的方式提交,这就是为什么我无法理解您为什么要更改查询字符串的格式。

即使我看不出您需要此字符串的任何原因:),您可以使用事件来创建正确的url并重定向到它。

使用来执行请求怎么样

您可以使用javascript在字符串中构造URL,然后使用GET(同步或同步,由您选择)设置XHR以提交到该URL

这样还可以避免踩到
onsubmit
表单事件的脚趾


或者,一个简单的解决方法是在字符串中构造URL,然后在使用
submit(
)方法提交表单之前,将表单
action
属性设置为此字符串。

如果您使用的是任何java脚本库,如jQuery,则可以序列化以查询字符串格式提供数据的表单。例:

您为什么要这样做?您将使用它作为分隔符,并在服务器上拆分它?是的……但不是/actionname?input1=something1&input2=something2&input3=something3。我希望有一个类似于/actionname?something1 | something2 | something3 | Something4的存储过程,可以解析url中的值“/actionname?”此调用将向表中插入值。对我来说,使用“|”可以很容易地被我的web服务解析,它构建了一个查询字符串,类似于通过表单上的标准GET submit获得的字符串。OP希望自定义URL的格式。serialize()不会这样做。