当我尝试发送表单时出现问题,如果存在特定字段类型,则页面返回超时。
我正在使用 KnockoutJS 的映射插件来映射来自服务器的对象。我能够修改该对象,我想将其发回。
为此,我创建了一个计算函数,该函数返回ko.toJSON
传递此特定对象的结果。然后,将此值放入隐藏输入中以发送回服务器:
<input type="hidden" name="a" data-bind="value: exportToJSON()" />
当我发送带有此输入字段的表单时,我收到错误 7:
错误 7 (net :: ERR_TIMED_OUT):操作超时。
这是代表我的代码的 JSFiddle
http://jsfiddle.net/etiennenoel/4EXSy/17/
我怀疑问题是因为通过 POST 发送的字段中的数据没有转义?
更新 1
有人建议使用 ko.mapping.toJSON。但是,这样做会导致一个空字符串,请在此处查看:http: //jsfiddle.net/etiennenoel/4EXSy/18/
更新 2
现在,结果输入不为空,这要感谢@abc123:http: //jsfiddle.net/etiennenoel/4EXSy/19/。但是,发送 POST 数据时我仍然会超时。您可以在我的代码中看到发送表单时发送的 POST 数据:http: //pastebin.com/hNRm4zdZ
更新 3
我正在使用 symfony2 并且我开始认为问题可能与 symfony2 中的某些内容有关,因为当我将表单复制并粘贴到一个简单的 .html 文件上时,数据会被发送......
更新 4
我删除了 Symfony2 dev.log,单击按钮发送表单,出现超时错误,不幸的是,日志仍然是空的....此外,所有 php 和 apache 日志都没有显示任何内容...
更新 5
我终于决定在另一台服务器上测试我的 symfony 网站,它可以在另一台服务器上运行......现在这变得很奇怪,为什么它不能在我的本地服务器上运行?我使用 MAMP Pro 作为本地服务器