【发布时间】:2013-12-17 17:42:43
【问题描述】:
我在网上商店设置 ajax 调用时遇到了很多麻烦。
整个订单系统相当大。集合分为类别,类别分为产品。产品分为S、M、L三种尺寸。
对于每个系列,订单表如下所示(简化):
echo '<form name="input" action="processing.php" method="POST">';
foreach ($categories as $category) {
foreach ($productids as $productid) {
echo '<input type="text" name="input['.$productid.'][s]" />';
echo '<input type="text" name="input['.$productid.'][m]" />';
echo '<input type="text" name="input['.$productid.'][l]" />';
}
}
echo '</form>';
这样设置表单非常方便,因为所有输入都在 $_POST['input'] 数组中。
在页面顶部,有几个指向不同集合的链接。当用户单击链接时,我想通过 ajax 将当前集合的输入字段的所有数据传递到 php 文件,以便将其保存到数据库。
链接标记:
<a href="index.php?action=order&collection=2" class="changecoll">Collection 2</a>
我有两个问题:
- 如何通过 jquery.ajax 调用将这么多的输入传递给 processing.php?在 data 参数中放入什么?
- 点击链接时触发 jquery.ajax 调用是否是解决此问题的正确方法?
【问题讨论】:
-
如果数据很多,我会通过 JSON 发送。在单击事件时发送 jQuery.ajax(我假设是 SUBMIT 按钮或类似的)也是我会做的。对我来说,您似乎走在正确的轨道上。
-
This 插件将序列化您的表单并执行 ajax 请求。您当然需要进行配置。