从php变量的下拉列表中按变量排序

时间:2017-11-14 13:48:02

标签: javascript php

我有一个下拉/排序选择列表,其中包含2个选项Popularity and Recently Ordered

我想通过这些属性过滤页面上的对象,我想将select中的两个选项连接到dataloader.php文件中的各个函数。

这些功能如下,但我想将$ofpg->reorder与最近订购的$ofpg->topseller连接到受欢迎程度,但我不确定如何将这些加载到我的选择框并将JS附加到排序方式。基本上我只是想用JS来重新排序这些项目的页面上的项目,但我需要一些指导才能开始。

以下是代码:

我的下拉列表/排序依据:

<div style="text-align:center;">
   <div>
    <span style="color:#fff;"><strong>Sort by:</strong></span>
    <select class="uk-text-muted" style="margin-top:10px; width:33%; height:30px; font-size: 16px;" >
    <option class="uk-text-muted" style="font-size: 16px;" value="" selected data-default>Popularity</option>
    <option class="uk-text-muted" style="font-size: 16px;" value="">Recently Ordered</option>
    </select>
   </div>
</div>

畅销书和最近的订单功能:

$ofpg = new OfDataProductGroup();
        $ofpg->group_code = trim($group['groupCode']);
        $ofpg->group_name = $group['groupName'];
        $ofpg->group_desc = $group['webDsc'];
        $ofpg->ctg = $group['ctg'];

        $ofpg->topseller = 0;
        $ofpg->reorder = 0;

        if($this->reorder){
            foreach($this->reorder as $i){

                if(trim($group['groupCode']) == $i->STYLE){
                    $ofpg->reorder = 1;
                    continue;
                }
            }
        }
        if($this->topsellers){

            foreach($this->topsellers as $i){
                $aa = json_decode($i->metadata);
                $s = $aa->style[0]->prdgroup;
                if(trim($group['groupCode']) == $s){
                    $ofpg->topseller = 1;
                    continue;
                }
            }
        }

1 个答案:

答案 0 :(得分:2)

可能有效的方法是使用 00_04 04_08 08_12 12_16 20_24 2017-11-10 21359 21359 10486 6747 14335 语句,并将if放在continue;的顶部。

类似的东西:

foreach

在上面的情况中,您使用foreach($aa as $a) { if($a != $something) // or use ($a == $something), just whatever you need. { continue; } echo $a; } 对数组中的每个键执行某些操作。但是在这个foreach之上,你有一个foreach语句。 if语句只会在符合要求时显示结果,否则它将不执行任何操作并继续到下一个键。

修改 这是用if写的,而不是PHP