首页 > 其他 > 详细

jeesite框架前端 tabPage页签刷新功能。

时间:2019-08-06 19:09:53      阅读:476      评论:0      收藏:0      [点我收藏+]
js主动刷新当前页签的js代码
原本想找一下jeesite有没有主动刷新当前页面的内置方法。
官方文档找了一大堆,找都找不到,也可能我这个需求比较少人需要。
tab标签页有一个右键刷新页签功能
技术分享图片

查看编译后的代码,发现可以用前端编译后的源码

$(.active .refresher).click() 

这个js脚本来调用官方内置的刷新功能。

但是这个脚本存在问题,只有第一次才会触发,再操作打开列表或表单界面后,这个方法就会失效。

浏览器调试发现,后面几次获取 $(‘.active .refresher‘) 元素都是空的,获取不到。

 
由于前段不是很熟悉,也没前段配合,想了老半天,最后发现
官方函数,js.getCurrentTabPage(currentTabCallback);  回调参数是iframe的contentWindow对象,
就想到了iframe的刷新功能。
下面是刷新当前页签的js代码。测试可以正常使用。
存在一个问题,如果是查询列表页面,调用下面js会造成查询条件丢失。
js.getCurrentTabPage(function(contentWindow){
//重新加载iframe窗口 contentWindow.location.reload(true); });

 

搞定这个问题,然后的当前页刷新功能就都可以实现了。
喝杯水吹个风的过程中,想到个问题。
既然这个前端框架是使用多个iframe在一个界面中,那只有第一次进入界面才能获取到$(‘.active .refresher‘)选择器对应元素的,操作界面一段时间后就获取不到的问题,就可以解释了通了。
浏览器控制台调式。(第一次刷新页面,可以获取到html元素,操作一段时间后,需要使用 $(选择器,window.parent.document).html() 这个来获取文档内容。
技术分享图片

 

所以,上面刷新当前页签的方法也可以改成下面的刷新代码(调用内置js脚本刷新页面,其实和上面代码一个样。)
$(‘.active .refresher‘,window.parent.document).click() 

jeesite框架前端 tabPage页签刷新功能。

原文:https://www.cnblogs.com/gne-hwz/p/11310975.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!