ajax中多个模板之间套用ajax

很多时候,我们发送一个ajax的时候,却有多个地方(多个模板)需要用到同一个数据。

我们通常会把这一大段都放在模板中,在需要的地方去写上数据即可。

可是,需要拿到ajax的地方没有集中在一个地方,不方便写在同一个模板上。

所以,可以把这几个地方放在不同的模板,用不同的id区分。

先用ajax发送到后台拿到数据,分别匹配不同的模板.

var html = template('tpl',info);var html2 = template('tpl2',info);...

然后分别添加到对应的父盒子中(一般会用一个空的父盒子接收,用html即可,不过像下拉加载更多的,要用append加载在后面即可)。

ajax是异步的,所以模板中的数据要注册事件不能在外面直接注册,

可以在外面注册委托事件,若要拿到之前的ajax的数据,要注意看之前的数据能不能拿到

也可以把注册事件写在ajax回调函数中,这样可以直接再事件中再次发送其他的ajax,或者访问外面的ajax返回的数据

//第一个ajax

Route.getbrandproductlist(brandtitleid, pagesize, function (info) {
 
//第一个模板,拿第一个ajax的数据
var html = template('tpl2', info);
$('.brandproduct').html(html);
 
render();
 
 //函数写在第一个ajax中,这样方便里面拿到外面的info
function render() {
Route.getproductcom(productid, function (info) {
 
//第二个模板,拿第一个ajax的数据
var html = template('tpl3', info);
$('.brandcomment').html(html);
 
//第三个模板,拿第一个ajax的数据 
var html2 = template('tpl4', first);
$('.top').html(html2);

 
})
};
 
});
原文地址:https://www.cnblogs.com/zhuangcui/p/9260065.html