Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AJAX更新类别-类别-主页上的产品_Javascript_Php_Jquery_Ajax_Magento - Fatal编程技术网

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

Javascript AJAX更新类别-类别-主页上的产品,javascript,php,jquery,ajax,magento,Javascript,Php,Jquery,Ajax,Magento,我想,我需要创造一些非常复杂的东西,我想知道是否有人能帮我提供一些想法/教程/例子 问题是,我们的客户希望在主页上有一个循序渐进的系统,客户可以在不同类别中进行选择,然后查看相关产品。 是的,我知道Amasty的分层导航和AJAX之类的东西,但我不认为这是我在这种情况下需要的。让我一步一步地解释 首先,这是一家电话修理店 该部分由4列组成,每列应根据您在该列之前选择的内容进行更新。 第一栏包括主要类别(手机品牌),如果你选择HTC,那么第二栏应该显示HTC的子类别。然后,在您选择了一种类型的手机

我想,我需要创造一些非常复杂的东西,我想知道是否有人能帮我提供一些想法/教程/例子

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

首先,这是一家电话修理店

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

我非常熟悉Magento的结构,我想我知道的足以创建自己的模块,我对PHP和jQuery/Javascript的知识应该足够了。但我不知道从哪里开始,也不知道这有多复杂。因为我们有一个设定的开发时间,我不确定我能在约定的时间内做到这一点

希望大家能分享一些见解和想法


荷兰(因此可能出现语法错误:p)

您所寻找的被称为“分面搜索”。在网上搜索这个确切的短语应该会得到一些不错的结果。我做了那件事,遇到了。它有一个很好的界面,你应该能够通读它的源代码来获得一些提示。其他一些人也问过类似的问题,所以这个问题可能会被标记为重复。看一看,这个可能会有帮助:


祝你好运。

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

函数加载筛选器(variable1、variable2、option、div){
$.post(“../filtros.php”,
数据:{variable1:var1,variable2:var2,option:option},
功能(数据){
$(“#”+div+”).html(数据);
}
);
}
$(“#var1”)。单击(函数(){
loadFilter($(this.val(),“”,option1,,“div1”);
});
$(“#var2”)。单击(函数(){
loadFilter($(“#var1”).val(),$(this.val(),“option2”,“div2”);
});

和php(../filtros.php)

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


然后单击#var2加载其数据

,即使这与我的估计不完全一致。这是使我走上正确方向的一般性答案。我创建了自己的模块,使用定制的IndexController.php处理AjaxRequests,并具有一些返回所需html的公共函数。
$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;
}