我是否还可以在表单上使用其他内容来获取所有不会将其置于URL表示法中的元素及其值?或者有一种快速清理返回的字符串的方法吗?
我得到了这个回复:
文件路径= afile.doc&安培; fileTitle = A +文件&安培; fileDescription =此+ +应该是在+ AN + ASC +排序%2C +最后+ + +第一+ A +降序
并且需要清理数据库提交的URL内容 - (“+”符号nad%2C(逗号)。
是否有一种简单的方法可以反转标准的URL编码符号?
答案 0 :(得分:7)
我是否可以在表单上使用其他内容来获取所有不会将其置于URL表示法中的元素及其值?
是的,您可以使用jQuery的serializeArray
,它将“...将一组表单元素编码为一组名称和值。”这将是最好的,因为你避免首先进行编码(我认为你想要使用未编码的版本值)。
示例:
var a, index, entry;
a = $("#theForm").serializeArray();
for (index = 0; index < a.length; ++index) {
entry = a[index];
display("a[" + index + "]: " + entry.name + "=" + entry.value);
}
是否有一种简单的方法可以反转标准的URL编码表示法?
是。可以使用decodeURIComponent
来解码各个编码值;可以使用decodeURI
解码完整字符串字段。
答案 1 :(得分:1)
如果您使用post而不是查询,则可以将元素命名为数组
<input type="hidden" name="block[369][filepath]" value="somepath"/>
<input type="hidden" name="block[369][title]" value="somefile.gif"/>
<input type="hidden" name="block[369][description]" value="imagefile"/>
我有点假设在这里分配,但这就是我把东西放到数组中进行php解析所以我不必依赖jQuery来序列化
只是一个想法
答案 2 :(得分:0)
我认为您可以使用服务器端语言解码您的URL,例如字符串urldecode(string $ str);