搭建ERP(条件查询)

1、条件查询采用离线条件查询的方法

/**
	 * 条件查询
	 */
	public List<Dep> getList(Dep dep1) {
		DetachedCriteria dc = DetachedCriteria.forClass(Dep.class);
		if(null != dep1) {
			//是否输入部门名称
			if(null != dep1.getName() && dep1.getName().trim().length() > 0) {
				//MatchMode.ANYWHERE 任意位置匹配
				//MatchMode.END      结尾匹配
				//MatchMode.START    开始匹配
				dc.add(Restrictions.like("name", dep1.getName(),MatchMode.ANYWHERE));
			}
			//是否输入部门的电话
			if(null != dep1.getTele() && dep1.getTele().trim().length() > 0) {
				//MatchMode.ANYWHERE 任意位置匹配
				//MatchMode.END      结尾匹配
				//MatchMode.START    开始匹配
				dc.add(Restrictions.like("tele", dep1.getTele(),MatchMode.ANYWHERE));
			}
		}
		return  (List<Dep>) this.getHibernateTemplate().findByCriteria(dc);
	}

2、采用jquery.serializejson.js插件将查询表单数据转化为JSON对象。注意引入js

        //绑定点击事件
		$('#btnSearch').bind('click', function() {
			//将查询表单数据转为JSON对象
			var formData = $('#searchForm').serializeJSON();
			//把json对象转为字符串
			alert(JSON.stringify(formData));
		});

3、 第一种:利用ajax将已经转为json对象的form表单数据传送到后端,并回调数据

            //利用AJAX提交JSON对象数据
			$.ajax({
				url:'dep_getList',//将数据提交到该地址(action中的方法)
				data:formData,    //数据源
				dataType:'json',   //数据格式
				type:'post',      //数据提交方法
				//成功后返回查询到的json对象
				success:function(rtn) {
					//grid加载数据
                    $('#grid').datagrid('loadData',rtn);
				}
			});

      第二种:

//绑定点击事件
		$('#btnSearch').bind('click', function() {
			//将查询表单数据转为JSON对象
			var formData = $('#searchForm').serializeJSON();
			//将数据传入通过ajax传入后端并回调数据,url默认使用前面#grid指定的url			
			$('#grid').datagrid('load',formData);
			
		});

4、整个实现代码如下:

<!-- 将dep_list方法查询到的数据通过JSON返回到页面(采用了easyUI回显表格数据的方法) -->
<script type="text/javascript">
	$(function() {
		//grid是要显示数据的id
		$('#grid').datagrid({
			//dep_list是获取JSON数据的url(本文中是action页面中的一个方法)
			url : 'dep_getList',
			columns : [ [ {
				field : 'uuid',
				title : '部门编码',
				width : 100
			}, {
				field : 'name',
				title : '部门名称',
				width : 100
			}, {
				field : 'tele',
				title : '联系电话',
				width : 100,
				align : 'right'
			} ] ]
		});
		
		//绑定点击事件
		$('#btnSearch').bind('click', function() {
			//将查询表单数据转为JSON对象
			var formData = $('#searchForm').serializeJSON();
			//将数据传入通过ajax传入后端并回调数据,url默认使用前面#grid指定的url			
			$('#grid').datagrid('load',formData);
			
			/* 整个这段代码等同于$('#grid').datagrid('load',formData);
			//利用AJAX提交JSON对象数据
			$.ajax({
				url:'dep_getList',//将数据提交到该地址(action中的方法)
				data:formData,    //数据源
				dataType:'json',   //数据格式
				type:'post',      //数据提交方法
				//成功后返回查询到的json对象
				success:function(rtn) {
					//grid加载数据
					//可以理解为:grid对象的datagrid方法,该方法需要两个参数,第一个为loadData方法,第二个为rtn
					$('#grid').datagrid('loadData',rtn);
				}
			}); */
			
		});
	});
	
</script>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值