文档章节

jeecg3.5中实现从一个页面跳转到另一个页面

z_jordon
 z_jordon
发布于 2015/04/25 18:04
字数 596
阅读 2761
收藏 4
点赞 0
评论 0

实现以下效果

点"跳转到demo"后直接跳转到demo示例,并且带上查询条件,如下:

由于jeecg使用的是easyui,所以不能直接用类似于<a href="xxxx.do?xxx">这样的方式来跳转了,但还是有办法做到的,首先在\plug-in\accordion\js\left_shortcut_menu.js中增加以下代码:

function goToTab(subtitle, url, icon) {
	// begin author:屈然博 2013-7-12 for:解决firefox 点击一次请求两次的问题
	var progress = $("div.messager-progress");
	if(progress.length){return;}
	// begin author:屈然博 2013-7-12 for:解决firefox 点击一次请求两次的问题
	rowid="";
	$.messager.progress({
		text : loading,
		interval : 200
	});
	if (!$('#maintabs').tabs('exists', subtitle)) {
		//判断是否进行iframe方式打开tab,默认为href方式
		if(url.indexOf('isHref') != -1){
			$('#maintabs').tabs('add', {
				title : subtitle,
				href : url,
				closable : true,
				icon : icon
			});		
		}else{
			$('#maintabs').tabs('add', {
				title : subtitle,
				content : '<iframe src="' + url + '" frameborder="0" style="border:0;width:100%;height:99.4%;"></iframe>',
				closable : true,
				icon : icon
			});		
		}

	} else {
		$('#maintabs').tabs('select', subtitle);
		if(url.indexOf('isHref') != -1){
			$('#maintabs').tabs('update', {
				tab : $('#maintabs').tabs('getSelected'),
				options : {
					href : url
				}
			});
		} else {
			$('#maintabs').tabs('update', {
				tab : $('#maintabs').tabs('getSelected'),
				options : {
					content : '<iframe src="' + url + '" frameborder="0" style="border:0;width:100%;height:99.4%;"></iframe>'
				}
			});
		}
		
		$.messager.progress('close');
	}

	// $('#maintabs').tabs('select',subtitle);
	tabClose();

}

这个方法实际上基本上都是抄原来的addTab方法,就是在如果原来已经打开tab的情况下用update的方式来更新tab。

然后在需要跳转到其它页面的地方增加以下代码,以jeecgNoteList.jsp为例:

<t:dgFunOpt funname="toDemo(id)" title="跳转到demo" />

对应的js:

function toDemo() {
    	var url = "jeecgDemoController.do?jeecgDemo&amp;selectedParams=" + encodeURIComponent("{\"sex\":0,\"createDate_begin\":\"2015-03-28\",\"createDate_end\":\"2015-04-14\"}");
    	window.parent.goToTab('Demo示例',url,'default')
    }

注意要用encodeURIComponent方法对链接进行处理,否则如果链接中带有特殊字符如引号的话不处理是无法正常传递参数的。

然后在目标界面增加以下代码,以jeecgDemoList.jsp为例:

$(function() {
		//延迟200毫秒执行,否则easyui会加载两次数据
		setTimeout(init, 200);
	});
	function init() {
		//alert($('#jeecgDemoList'));
		var href = decodeURIComponent(window.location.href);
		//alert(href);
		var idx = href.indexOf('selectedParams');
		if (idx != -1) {
			idx = href.indexOf("{", idx);
			if (idx != -1) {
				var endIdx = href.indexOf("}", idx);
				if (endIdx != -1) {
					var selectedParams = href.substring(idx, endIdx + 1);
					var jsonParam = $.parseJSON(selectedParams);
					$('#jeecgDemoListtb').find('*').each(function() {
						if (jsonParam[$(this).attr('name')] != undefined) {
							if ($(this)[0].tagName == "SELECT") {
								//$(this).attr("value", "0");
								$(this).val(jsonParam[$(this).attr('name')]);
							} else if ($(this)[0].tagName == "INPUT") {
								$(this).val(jsonParam[$(this).attr('name')])
							}
							
						}
					});
				}
				
			}
			
		}
		jeecgDemoListsearch();
	}

注意其中的jeecgDemoList类似的字眼因为是jeecg生成的,所以需要根据实际情况修改成实际的值。

© 著作权归作者所有

共有 人打赏支持
z_jordon
粉丝 35
博文 250
码字总数 78212
作品 0
厦门
技术主管
解决jeecg3.5中由于easyui的原因会加载两次数据的问题

在解决完jeecgt3.5中的这个问题:jeecg3.5中实现从一个页面跳转到另一个页面 后,发现数据会被加载两次,在网上找了半天也没找到原因,最后发现是由于调用datagrid方法太快引起的,解决方法为...

z_jordon ⋅ 2015/04/27 ⋅ 0

C#页面之间跳转功能的小结

在两个ASP.NET页面之间传递值 引言 ASP.NET提供了卓越的事件驱动编程模型,让开发者简化了应用程序的总体设计,但是这个也造成了它固有的一些问题,例如,使用传统的ASP里,我们可以通过使用...

aehyok ⋅ 2013/03/17 ⋅ 0

JavaWeb09-HTML篇笔记(三)

1.1 案例二:登录成功以后5秒钟跳转到另一个页面.1.1.1 需求: 在登录成功后,页面5秒钟跳转到其他的一个页面. 1.1.2 分析:1.1.2.1 技术分析: 【使用Http协议中的Refresh头信息】 Refresh之前已...

我是小谷粒 ⋅ 05/21 ⋅ 0

【Android基础】页面跳转与传值(Activity跳转与传值)

一个Android应用程序很少会只有一个Activity对象,如何在多个Activity之间进行跳转,而且能够互相传值是一个很基本的要求。 本次我们就讲一下,Android中页面跳转以及传值的几种方式! Acti...

晨曦之光 ⋅ 2012/03/01 ⋅ 0

组件化知识梳理(4) - IOC & AOP 思想在 Arouter 中的应用

一、IoC 1.1 基本概念 ,中文翻译为 控制反转,具体实现是 由容器来控制业务对象之间的依赖关系,最终的目的是 避免和降低对象间的依赖关系。本质上是控制权由应用代码转到了外部容器,控制权...

泽毛 ⋅ 05/08 ⋅ 0

Struts2采用注解方式配置url和Action的映射

=================注解方式action的格式================= @Result(name="ajaxData",params= {"root","jsdata"},type="json")@Result(name="result",params= {"root","result"},type="json"......

12qw90op ⋅ 2012/12/26 ⋅ 2

javaEE--request.getRequestDispatcher--URL后带参数实现自定义跳转

javaEE web项目,需求如下:QueryServlet(数据库查询操作),每一次添加(addUser.jsp),删除(delUser.jsp)和修改(updateUser.jsp)的操作后都需要调用QueryServlet,如何能够在实现Que...

萧沐垚 ⋅ 2016/12/16 ⋅ 0

使用flask将机器学习模型嵌入到web系统中

在这篇文章中,主要介绍如何将一个机器学习的模型嵌入到web系统中,这篇文章的主要内容包括: 1、利用flask构建一个简单的web 2、将机器学习模型嵌入到web系统中 3、根据用户的反馈来更新模型...

sinat_29957455 ⋅ 04/22 ⋅ 0

新人求助,如何实现游戏过关后跳转到别的界面?

刚刚接触安卓开发的新人,按照视屏教程一步步做出了一个最基本的数独游戏,现在想实现数独完成后可以自动跳转到一个新的诸如恭喜过关的页面,但不知道如何实现。 本人的一个思路是利用游戏中...

bird97 ⋅ 2015/04/26 ⋅ 0

RN与原生交互(一)——基本页面跳转

React Native(以下简称RN)开发app过程中大部分都可以在JS端完成,但是也有一些功能是需要原生端来完成的。这时RN与原生端就不可避免的需要进行交互,比如页面跳转和数据传递。本篇文章主要以...

不變旋律 ⋅ 06/13 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Netweaver和SAP云平台的quota管理

Netweaver 以需要为一个用户上下文(User Context)能够在SAP extended memory区域中分配内存尺寸创建quota为例。 对于Dialog工作进程,使用事务码修改参数 ztta/roll_extension_dia. 对于非D...

JerryWang_SAP ⋅ 20分钟前 ⋅ 0

IDEA提示编码速度

焦点移动 将焦点冲代码编辑窗口移动到菜单栏:Alt+菜单栏带下划线字母 将焦点从工具窗口移动到代码编辑窗口 Esc或Shift+Esc 将焦点从代码编辑移动到最近使用的工具窗口 F12 模板提示 Ctrl+J...

bithup ⋅ 29分钟前 ⋅ 0

180623-SpringBoot之logback配置文件

SpringBoot配置logback 项目的日志配置属于比较常见的case了,之前接触和使用的都是Spring结合xml的方式,引入几个依赖,然后写个 logback.xml 配置文件即可,那么在SpringBoot中可以怎么做?...

小灰灰Blog ⋅ 53分钟前 ⋅ 0

冒泡排序

原理:比较两个相邻的元素,将值大的元素交换至右端。 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第...

人觉非常君 ⋅ 今天 ⋅ 0

Vagrant setup

安装软件 brew cask install virtualboxbrew cask install vagrant 创建project mkdir -p mst/vmcd mst/vmvagrant init hashicorp/precise64vagrant up hashicorp/precise64是一个box......

遥借东风 ⋅ 今天 ⋅ 0

python3.6 安装pyhook_3

我的是在win下的,忙了半天老是安装不了, pip install 也不行。 那么可以看出自己的版本是32bit 一脸懵逼 没办法 只好下载32版本的来安装 我一直以为 是 对应32 位的 。 下面是 小例子 http...

之渊 ⋅ 今天 ⋅ 0

004、location正则表达式

1、location的作用 location指令的作用是根据用户请求的URI来执行不同的应用,也就是根据用户请求的网站URL进行匹配,匹配成功即进行相关的操作。 2、location的语法 = 开头表示精确匹配 ^~...

北岩 ⋅ 今天 ⋅ 0

CentOS7 静默安装 Oracle 12c

环境 CentOS7.5 最小安装 数据库软件 linuxx64_12201_database.zip 操作系统配置 关闭 SELinux sed -i '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config 关闭防火墙 systemctl disable ......

Colben ⋅ 今天 ⋅ 0

Yii2中findAll()的正确使用姿势/返回为空的处理办法

从一次错误的操作开始 $buildingObject = Building::findAll("status=1"); 1 这个调用看着没有任何毛病,但是在使用时返回的结果却是一个空数组。再回过头来看看数据表中: 按照套路来讲,查...

dragon_tech ⋅ 今天 ⋅ 0

如何优雅的编程——C语言界面的一点小建议

我们鼓励在编程时应有清晰的哲学思维,而不是给予硬性规则。我并不希望你们能认可所有的东西,因为它们只是观点,观点会随着时间的变化而变化。可是,如果不是直到现在把它们写在纸上,长久以...

柳猫 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部