关于页面上一次点击,发送多次请求的问题
2016-08-18 11:23
417 查看
今天在实现功能的时候发现了一个问题, 在做一个导入的时候,第几次点击导入按钮,就会发送几次请求到后台的问题
页面标签:
<a href="javascript:void(0);" class="dowload" onclick="contributionStatis_setting.exportExcel();">
js 代码(问题代码):
/**
* 导出
*/
exportExcel:function (ids){
$("#tipMask").show();
var statis_time = $("#search_time a[class=cur]").html();
if(statis_time == "全部"){
statis_time = " ";
}
//搜索关键字
//var keyword =$.trim($("#keyword").val());
// 时间
var search_time = $("#search_time a[class=cur]").attr("value");
var beginOn = $("#start").val();
var endOn = $("#end").val();
if (search_time!=undefined){
if (search_time==""){
beginOn =search_time;
}else{
beginOn = contributionStatis_setting.getdesignateDate(search_time);
}
endOn = contributionStatis_setting.getdesignateDate(0);
}else{
if (checkNull(beginOn)) {
tipDialog("fail","请选择开始时间");
return;
}
if (checkNull(endOn)) {
tipDialog("fail","请选择结束时间");
return;
}
}
$("#statis_contribution_export").show();
$("#statis_contribution_export_btn").click(function () {
$(".BoxWrap").hide();
$("#tipMask").hide();
window.document.exportform.action = WEB_URL + "/views/DataContributeList/statis_Contribute_excel?statis_time="+statis_time
+"&beginOn="+beginOn+"&endOn="+endOn+"&keyword="+keyword;
window.document.exportform.submit();
});
},
后来发现是 <a> 标签绑定了 click 事件, 才一直叠加, 出现第几次点击, 发送几次请求的问题, 解决方案是:
先解开绑定的 click 事件 .unbind('click') 然后在做绑定。
js 代码(正确代码):
/**
* 导出
*/
exportExcel:function (ids){
$("#tipMask").show();
var statis_time = $("#search_time a[class=cur]").html();
if(statis_time == "全部"){
statis_time = " ";
}
//搜索关键字
//var keyword =$.trim($("#keyword").val());
// 时间
var search_time = $("#search_time a[class=cur]").attr("value");
var beginOn = $("#start").val();
var endOn = $("#end").val();
if (search_time!=undefined){
if (search_time==""){
beginOn =search_time;
}else{
beginOn = contributionStatis_setting.getdesignateDate(search_time);
}
endOn = contributionStatis_setting.getdesignateDate(0);
}else{
if (checkNull(beginOn)) {
tipDialog("fail","请选择开始时间");
return;
}
if (checkNull(endOn)) {
tipDialog("fail","请选择结束时间");
return;
}
}
$("#statis_contribution_export").show();
$("#statis_contribution_export_btn").unbind('click').click(function () {
$(".BoxWrap").hide();
$("#tipMask").hide();
window.document.exportform.action = WEB_URL +
"/views/DataContributeList/statis_Contribute_excel?statis_time="+statis_time
+"&beginOn="+beginOn+"&endOn="+endOn+"&keyword="+keyword;
window.document.exportform.submit();
});
},
页面标签:
<a href="javascript:void(0);" class="dowload" onclick="contributionStatis_setting.exportExcel();">
js 代码(问题代码):
/**
* 导出
*/
exportExcel:function (ids){
$("#tipMask").show();
var statis_time = $("#search_time a[class=cur]").html();
if(statis_time == "全部"){
statis_time = " ";
}
//搜索关键字
//var keyword =$.trim($("#keyword").val());
// 时间
var search_time = $("#search_time a[class=cur]").attr("value");
var beginOn = $("#start").val();
var endOn = $("#end").val();
if (search_time!=undefined){
if (search_time==""){
beginOn =search_time;
}else{
beginOn = contributionStatis_setting.getdesignateDate(search_time);
}
endOn = contributionStatis_setting.getdesignateDate(0);
}else{
if (checkNull(beginOn)) {
tipDialog("fail","请选择开始时间");
return;
}
if (checkNull(endOn)) {
tipDialog("fail","请选择结束时间");
return;
}
}
$("#statis_contribution_export").show();
$("#statis_contribution_export_btn").click(function () {
$(".BoxWrap").hide();
$("#tipMask").hide();
window.document.exportform.action = WEB_URL + "/views/DataContributeList/statis_Contribute_excel?statis_time="+statis_time
+"&beginOn="+beginOn+"&endOn="+endOn+"&keyword="+keyword;
window.document.exportform.submit();
});
},
后来发现是 <a> 标签绑定了 click 事件, 才一直叠加, 出现第几次点击, 发送几次请求的问题, 解决方案是:
先解开绑定的 click 事件 .unbind('click') 然后在做绑定。
js 代码(正确代码):
/**
* 导出
*/
exportExcel:function (ids){
$("#tipMask").show();
var statis_time = $("#search_time a[class=cur]").html();
if(statis_time == "全部"){
statis_time = " ";
}
//搜索关键字
//var keyword =$.trim($("#keyword").val());
// 时间
var search_time = $("#search_time a[class=cur]").attr("value");
var beginOn = $("#start").val();
var endOn = $("#end").val();
if (search_time!=undefined){
if (search_time==""){
beginOn =search_time;
}else{
beginOn = contributionStatis_setting.getdesignateDate(search_time);
}
endOn = contributionStatis_setting.getdesignateDate(0);
}else{
if (checkNull(beginOn)) {
tipDialog("fail","请选择开始时间");
return;
}
if (checkNull(endOn)) {
tipDialog("fail","请选择结束时间");
return;
}
}
$("#statis_contribution_export").show();
$("#statis_contribution_export_btn").unbind('click').click(function () {
$(".BoxWrap").hide();
$("#tipMask").hide();
window.document.exportform.action = WEB_URL +
"/views/DataContributeList/statis_Contribute_excel?statis_time="+statis_time
+"&beginOn="+beginOn+"&endOn="+endOn+"&keyword="+keyword;
window.document.exportform.submit();
});
},
相关文章推荐
- 有关于用javaScript点击一次提交数据却发送了两次或者多次的问题
- 关于HTML发送AJAX请求一直重复刷新页面问题
- 点击按钮一次,多次请求的问题
- iOS 基于runtime 解决UIButton重复点击 发送多次请求问题
- 防止用户多次点击按钮,导致发送多次请求或者其他问题。
- 关于struts2在页面请求转发到action的问题
- ajax提交相同url,重复发送请求后台,页面无更新的问题解决
- ios--关于子线程发送网络请求接受不到响应问题
- 关于请求被挂起页面加载缓慢问题的追查
- Android HttpUrlConnection 发送Post请求 PHP页面$_POST接收不到问题
- 关于Web API中使用ajax发送请求方式的问题
- 解决带fusionCharts的页面多次点击后不显示的问题
- 关于每次点击一次转化与每次点击多次转化
- 关于从另外一个页面请求传值问题
- [置顶] jQuery发送ajax请求,一次点击重复提交
- 关于WinForm框架中点击按钮时存在的多次提交问题的解决方法
- 关于问题由于 web 服务器上的“isapi 和 cgi 限制”列表设置,无法提供您请求的页面的解决方案
- 关于页面上某些点击事件无效的问题
- 关于页面上某些点击事件无效的问题
- 关于页面请求中文乱码问题