0

再会..

我有一个问题是我的齿轮磨了一个星期,但我找不到完全符合我要求的解决方案。

我正在使用 php 构建一个应用程序,旨在让员工接受订单并将其提交给相应的部门(类似于购物车,但略有不同)。

提交订单并分配给部门是我整理的。我想到的是这样的:

  1. 员工单击按钮以添加项目
  2. 一个弹出窗口将显示项目菜单
  3. 员工可以一次选择一个项目,一旦选择了该项目,它就会添加到订单项目中。

项目将从数据库中填充。

我遇到的问题是,对于某些项目,我需要有多个子项目的选项。例如,如果我有一个包含项目的促销包,我需要将促销项目添加到带有以下子项目的订单列表中。

以下链接与我想要的类似,我需要的是添加的表单元素的数量根据工作人员选择的项目而有所不同:

http://www.daveismyname.com/demos/dynamic-form-elements-with-jquery/

任何关于如何实现这一点的想法或指示都将受到高度赞赏。

编辑:代码已被删除,因为它进行了重大修订。完成后我会发布最终结果。

4

1 回答 1

1

当员工单击按钮添加项目时,您的脚本会触发 AJAX 调用,该调用从 PHP 脚本中获取有关项目的数据。该数据应包含每个产品的子项数量。因此,当员工挑选商品时,您会使用商品和子商品填充订单。

关键是使用 AJAX 来获取数据,我假设现在您在页面加载时生成项目菜单,并在“添加项目”单击时更改 css 规则来显示它。如果您将其更改为 AJAX,您将拥有有关子项的数据,因此可以正确填充订单。

更新:

用户单击“添加项目”链接。AJAX 请求被触发,php 脚本返回 JSON 数组,其中包含有关可用项目的数据。该数组包含所有详细信息,包括依赖项(子项,当您选择主项时需要添加到订单中)。示例 php 脚本:

$list_of_items[] = array(
    'name' => 'Promo pack',
    'image' => '/images/promopack.jpg',
    'subitems' => array(
        array(
            'name' => 'Promo pack item 1',
            'image' => '/images/promopackitem1.jpg'
            ),
        array(
            'name' => 'Promo pack item 2',
            'image' => '/images/promopackitem2.jpg'
            )
        )
);
echo json_encode($list_of_items);

然后,您使用parseJSON在 JavaScript 中解码该数据。

如果用户单击没有子项目的项目,您只需将其添加到订单中。如果用户单击带有子项目的项目,则添加项目本身和所有子项目。由于您将该数据作为一个简单的数组(感谢 JSON 格式),您可以通过访问该数组的元素来处理数据。

于 2013-03-12T11:21:36.307 回答