王伟7
王伟7
  • 发布:2016-06-03 16:59
  • 更新:2017-08-18 09:41
  • 阅读:2582

列表页进入详情页 ajax 会重复提交数据

分类:MUI

问题:
1、从列表页进入详情页后
第一次ajax提交数据会提交一次,
当返回(隐藏)第二次进入详情页 ajax提交数据会提交两次,
当返回(隐藏)第三次进入详情页 ajax提交数据会提交三次,
同时服务器会从详情页接收重复请求

//初始化预加载详情页面
mui.init({
preloadPages:[{
id:'detail.html',
url:'detail.html'
}
]
});

//列表页面代码如下:
var detailPage = null;
//添加列表项的点击事件
mui('.mui-content').on('tap', 'a', function(e) {
var id = this.getAttribute('id');
//获得详情页面
if(!detailPage){
detailPage = plus.webview.getWebviewById('detail.html');
}
//触发详情页面的newsId事件
mui.fire(detailPage,'newsId',{
id:id
});
//打开详情页面
mui.openWindow({
id:'detail.html'
});
});

//详情页面代码如下:
//添加newId自定义事件监听
window.addEventListener('newsId',function(event){
//获得事件参数
var id = event.detail.id;
//根据id向服务器请求新闻详情
.....
});

2016-06-03 16:59 负责人:无 分享
已邀请:
8***@qq.com

8***@qq.com

怎么解决呢?

9***@qq.com

9***@qq.com

请问这个问题您解决了吗?我现在有遇到

你猜猜我是谁

你猜猜我是谁

我也遇到ajax重复请求问题,求解决方案

r***@outlook.com

r***@outlook.com

我是在详情页请求完成后,返回父页面,在父页面预加载详情页之前执行一次关闭详情页:

plus.webview.close(详情页id);

n***@gmail.com

n***@gmail.com

详情页预加载,列表页到详情页触发详情页的ajax请求,返回列表页(此时详情页隐藏),再次进入详情页,ajax会请求一次,反复操作未复现你们说的ajax请求重复的问题,可否提供示例让我们看看

回梦無痕

回梦無痕 - 暂停服务

可能是不断的使用plus.webview.create创建相同ID的列表详情页,plus.webview.create之前要先判断一下目标也是否已经存在,存在就直接show,不存在才创建再show

该问题目前已经被锁定, 无法添加新回复