0
当我张贴在下面的语法使用jQuery一的Html.Form:jQuery的岗位与form.serialize()接收空
$.post('<%: Url.Action("ActionName","ControllerName") %>',
$("#FormName").serialize());
对象被正确地发送到服务器,但如果我使用:
var reason = encodeURIComponent($("#FormName").serialize());
$.post('<%: Url.Action("ActionName","ControllerName") %>',
{ reason: reason });
序列化对象为空,当我使用encodeURIComponent或没有它时,我会得到相同的结果。 我需要发送更多的参数数据到服务器,这就是为什么我想使用第二种方法,但我不能让它正确地发送序列化的对象。
查看发布的数据(使用Fiddler或其他检测工具)会显示您的问题。 URI编码单个数据点,而不是整个发布的序列化字符串。 – asawyer 2013-05-10 12:23:08
谢谢,有没有可能用不同的方法来编码它? – user1770407 2013-05-10 12:25:30
我非常确定它已经编码的数据:http://sectoverflow.com/a/6653908/426894 http://api.jquery.com/serialize/。.serialize()方法在标准URL中创建一个文本字符串编码的符号。 – asawyer 2013-05-10 12:28:12