ajax中多个模板之间套用ajax

Posted 庄翠的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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);

 
})
};
 
});

以上是关于ajax中多个模板之间套用ajax的主要内容,如果未能解决你的问题,请参考以下文章

Django - 在同一个模板(ajax 和表单)中处理多个 CSRF 令牌禁止(CSRF 令牌丢失或不正确。)

记一次Bootstrap框架下 使用Ajax失效的问题

Django:如何在 ajax 中返回模型表单集并在模板中使用

如何将带有上下文变量的 Django 模板发送到 Ajax 调用?

Django:在 AJAX 请求后加载模板

[每日一题] 简述 AJAX 的原理