2011-03-18 45 views
-1

我使用JavaScript在某些事件上自动提交表单。但是,URL在提交时目前不进行编码,并且导致我出现一些问题。例如,这是一个提交表单的URL:使用JavaScript编码并提交表单

http://localhost/index.php?param=testParam%2Ftest.xml

我要编码的URL和消除%2F(另外,虽然我们是在它有哪些呢%2F意味着我找到了%2手段,而是怎么样%2F)

我有以下简单的jQuery代码:

$("#myForm").submit(); 

如何使用这个代码,并提交与URL的形式编码?

提前

回答

0

我通过一个简单的PHP脚本,将生成URL,并相应地重定向解决了这个问题。以下是代码:

$url = $_GET['file'] . "?source=" . $_GET['source']; 
header('Location: ' . $url); 

使用标头重定向,URL会以良好的解码格式自动发送。

+0

它不是以“良好编码格式”发送它的标题()重定向。 PHP自动urldecodes $ _GET中的数据。如果你要转储$ url,你会发现它已经被urldecoded了。 – CAFxX 2011-03-22 09:41:51

0

%2F许多感谢的是url-encoded form为“/”

,当你把它们传递给你的服务器,因为它可以通过HTTP服务器受到严重解释必须URLEncode的特殊字符。

服务器处理解码

+0

我保存页面要以隐藏形式重定向的源代码。我尝试编码隐藏元素的值,但它仍然没有编码 – seedg 2011-03-18 16:20:46

+0

它必须是。浏览器在使用提交方法时会自动执行。我怀疑你误解了这些症状。 – Quentin 2011-03-18 16:27:54