AJAX更新类别 - 类别 - 主页上的产品

时间:2014-03-07 14:51:38

标签: javascript php jquery ajax magento

我认为,我需要创建一些非常复杂的东西,并且想知道是否有些人可以帮助我提出想法/教程/示例。

问题是我们的客户想要在主页上逐步进行系统,客户可以在不同类别之间进行选择,然后查看相关产品。 是的我知道Amasty等的分层导航和AJAX的东西,但我不认为这就是我在这种情况下所需要的。让我一步一步解释。

首先,这是一家电话维修店。

该部分由4列组成,每列应根据您在该列之前选择的内容进行更新。 第一列由主要类别(手机品牌)组成,如果您选择让我们说HTC,那么第二列应该显示HTC的子类别。然后在您选择一种类型的电话后,第三列应该更新可能的维修(产品)。然后在选择其中一个维修(产品)后,第四列应更新价格等,并显示“继续结帐”按钮。 所有这些更新都应该使用AJAX,因为不断重新加载页面是一件烦恼。

我非常熟悉Magento的结构,我想我已经足够了解我自己创建的模块,而且我对PHP和jQuery / Javascript的了解应该足够了。但我不知道从哪里开始,这有多复杂。因为我们有一个固定的开发时间,我不确定我是否可以在约定的时间内完成这项工作。

希望任何人都可以分享一些见解和想法!

荷兰(因此可能存在语法错误:P)

3 个答案:

答案 0 :(得分:1)

您应该只为要更新的网页的每个部分创建一个ajax请求函数。您可以将响应文本发送到回调函数,该函数将构建列

答案 1 :(得分:0)

您正在寻找的内容称为“分面搜索”。在网上搜索那个确切的短语应该会产生一些非常好的结果。我做到了,遇到了this GitHub project。它有一个很好的example page,您应该能够阅读它的源代码以获得一些提示。其他一些人也提出了类似的问题,因此这个问题可能被标记为重复。请查看other StackOverflow questions,这可能会有所帮助:Javascript Faceted Search Client (Framework)

祝你好运。

答案 2 :(得分:0)

function loadFilter(variable1,variable2,option,div){ $.post("../filtros.php", data:{ variable1:var1, variable2:var2, option:option}, function(data){ $("#"+ div+"").html(data); } ); } $("#var1").click(function(){ loadFilter($(this).val(),"","option1","div1"); }); $("#var2").click(function(){ loadFilter($("#var1").val(),$(this).val(),"option2","div2"); });

和php(../ filtros.php)

$option=$_REQUEST["option"];
if($option=="var1"){ 
   $query = "select * from yourtable where var1 =". $_REQUEST["var1"];
}
if($option=="var2"){ 
   $query = "select * from yourtable where var1 =". $_REQUEST["var1"].
"and var2 = ".$_REQUEST["var2"];
}
foreach(query as q){
    echo q;
}

点击#var1加载其数据(var2)

并点击#var2加载其数据