我遇到了无法解决的问题。部分是因为我无法用正确的术语来解释它。我是新手,对这个笨拙的问题感到抱歉。
您可以在下面看到我的目标概述。
我正在使用Magento CE 1.7.0.2。
在这里你可以看到我的目标..
对于类别产品我在JQuery&中编写了一个自定义设计脚本它工作得很好。
设计脚本:
<script>
$(document).ready(function(){
$("li.item").each(function(){
// my design script.
});
});
</script>
我有一个ajax脚本,我正在显示这个页面中的一些产品,最后这个也工作正常,但设计脚本不适用于产品从ajax脚本获得的所有产品。< / p>
ajax脚本:
$.ajax({
url: url1,
cache: false ,
type : 'POST',
// dataType: "json",
data: data1,
success: function(response){
if (response) {
var string = $('.ajaxproducts', response);
$('.displayproductsfromajax').html(string);
}
}
});
我想为ajax脚本产品制作相同的设计脚本。
我在这里做错了什么?
有什么想法吗?
答案 0 :(得分:2)
问题是,你只在dom ready函数上调用了设计脚本。在ajax成功之后,你需要再次调用它才能应用样式或其他东西。
function applyScript()
{
$("li.item").each(function(){
// my design script.
});
}
$.ajax({
url: url1,
cache: false ,
type : 'POST',
// dataType: "json",
data: data1,
success: function(response){
if (response) {
var string = $('.ajaxproducts', response);
$('.displayproductsfromajax').html(string);
applyScript()
}
}
});
答案 1 :(得分:0)
你必须能够在单独的集合上调用你的设计算法,所以将它包装在像这样的函数中
var myDesign = function(i,el){
// this will be a reference to the current li.item in "each"
};
$(document).ready(function(){
$("li.item").each(myDesign);
});
...
$.ajax({
url: url1,
cache: false ,
type : 'POST',
// dataType: "json",
data: data1,
success: function(response){
if (response) {
var string = $('.ajaxproducts', response);
$('.displayproductsfromajax').html(string).find('li.item').each(myDesign);
}
}
});