现象
调用 jquery.jBox-2.3的方法
<a οnclick="openW('/mycrm/a/udef/form/213213123?id=bb1bb114d1fe4af39dcc5beffc0b35b6','<h3>工单信息</h3>')" href="javascript:void(0)">[电]20062817121575342</a>
(如果你的href里是个链接,肯定是连接的问题, 改成javascript:void(0)试试 ,不是得话继续)
function openW(url,title){
console.log("open");
console.log(window.top.innerWidth);
console.log(window.top.innerHeight);
top.$.jBox("iframe:"+url, {
top:'5%',
title: title,
width: window.top.innerWidth-200,
height: window.top.innerHeight-100,
persistent: true,
async: false,
buttons :{},
showSpeed : 'fast',
closed: function () {
closeUpdate();
}
});
}
一次弹窗向后台请求一次
浏览器显示请求了两次,一次为canceled
解决方案
jquery.jBox-2.3 的源码中的ajax请求中有这样的写法 jboxIframeForm.submit();
就是这个 jboxIframeForm.submit();我已经注释掉了,这个造成又提交一次,
o.find("#jbox-iframe").attr({ src: f.url }).bind("load",
此段代码已经把路径加载到jBox 中了,为啥还要submit
我注释掉这个之后再也没发现请求重复的问题,页面保存和展现也都正常,最后我把修改完的jquery.jBox-2.3也上传了,没有的小伙伴可以去我上传的资源里下载 https://download.csdn.net/download/zhaofuqiangmycomm/12563215
写到最后,不影响家看文章,不知道网上为啥会有一大堆iframe请求重复的造成原因说明,而没解决方案,有人写了个文档要了22积分 。。。。。
我给这个文档截个图看一下,
说了半天就是 所有的iframe的src给””,他就不会去加载页面了,然后,每一次select,动态的给赋值url, 真坑22积分,
href标签中要通过ajax向后台请求, 那 href为空为 # 或为 javascript:void(0) 这是程序员入门好吧