我正在尝试在用户填写传统表单字段(例如用户名、电话等)的表单中使用 jqGrid。该表单包含用于行项目的 jqGrid,用户可以在其中添加/编辑/删除行,完成后提交整个表格。我让网格按我希望的方式工作,我只是无法将网格的内容作为包含表单的一部分提交。
这是一个伪代码示例:
<form id="foo">
<input id="username" type="text">Your name<br>
Enter your choices in the grid below:
<!-- imagine jqGrid here -->
<input type="submit" value="Submit the form"></form>
我已经搜索、谷歌搜索、阅读文档、阅读 wiki 等,但只是不知道如何将 jqGrid 行和列作为表单字段传递。任何指导将不胜感激。
也许最好的方法是使用隐藏的表单字段:
<input type="hidden" name="gridData" value="" />
然后,您可以在提交表单之前使用列数据填充该字段。您可以通过在修改网格数据时更新字段来完成此操作,或者通过在按下按钮提交表单时调用 JavaScript 函数(并调用表单submit
从该函数内)。
要将网格数据写入隐藏字段,您可以调用getRowData
依次在网格的每一行上,并将每行的数据附加到数组中。或者也许有更好的方法。例如,有一个新的data
可能有效的选项?无论如何,一旦你有了网格数据,你就可以使用json2.js http://www.json.org/js.html将数据序列化为 JSON 格式:
JSON.stringify( myGridData );
然后在服务器上,您可以从该隐藏字段解码 JSON,并进行相应的处理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)