0

我目前正在为 ATG 中的蜂窝网络开发电子商务网站。我正在尝试应用“过滤器”根据手机的显示尺寸来限制手机,分为三个类别

  1. 4 英寸及以下
  2. 4 - 5 英寸
  3. 5 英寸或更多。

目前我只能传递一个值,比如 4 英寸,并获得 4 英寸类别中的所有手机。

- - - - 代码 - - - - -

<LI id=menu-item-458
                                                       class="menu-item menu-item-type-custom menu-item-object-custom menu-item-458">
                                                       <dsp:droplet name="/store/commerce/droplets/FilterDroplet" >
                                                       <dsp:param name="filterBy" value="displayScreenDetails"/>
                                                       <dsp:param name="filterConstant" value="4"/>
                                                       <dsp:oparam name="output">
                                                       <p id="4" class="selected">
<A href="#"onclick="filterItems('displayScreenDetails','4')">* 4-inches(<dsp:valueof param="count"/>)</A></p>`
                                                        </dsp:oparam>
                                                        </dsp:droplet>
                                                    </LI>

<LI>用于显示菜单并将值传递给名为 filerItems() 的脚本函数

我想在各自的类别下显示所有手机,而不是确定的数字。帮助我用 dsp 标记库或 java 方法形成代码来处理传递的值。我希望我的问题很清楚。谢谢。!

4

2 回答 2

0

您将需要向您添加另一个请求参数,FilterDroplet该参数将采用一个运算符(如“equals”或“lessThan”),然后在service方法内部调用一个采用 3 个参数的新方法。假设您当前有一个小方法,该方法将采用 2 个参数(用于“filterBy”和“filterConstant”)。

您的输出似乎也有点受限,因为它假设您只会得到 1 个结果。输出参数上没有运行循环。

于 2013-04-16T20:32:17.880 回答
0

有简单的方法和很长的方法可以做到这一点。但我会推荐从长远来看会有所帮助的漫长道路。由于您正在使用过滤器,因此使用 SKU 属性对它们进行分类很重要。希望屏幕大小来自 BCC(意思是 DB),尝试为您的 SKU 对象创建一个字段以在初始化期间计算类别。

SKU 将已经具有您的屏幕尺寸属性,并且在您的非存储库 SKU 对象中创建过滤器字段应该不够难。在页面加载时,传递页面上显示的所有 SKU 并获取过滤器详细信息,以便以后添加另一个过滤器项时会有所帮助。

我觉得它需要一种更通用的方法,即创建一个自定义过滤器映射,它可用于填充任何属性。

于 2014-06-01T20:02:59.680 回答