怎么利用ajax模糊查询后台数据库并在页面上用下拉框显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么利用ajax模糊查询后台数据库并在页面上用下拉框显示相关的知识,希望对你有一定的参考价值。
不知道在jsp中的输入框里加什么
<td align="right"><span class="formtableline"> 名称:</span></td>
<td> <input style="width: 350px;" type="text" name="goods.goodsName" value="$goods.goodsName " /></td>
<td align="left">
<input type="button" value="查询" class="btn" onclick="doQuery()" />
</td>
需要添加哪些东西?
后台是
StringBuffer hql = new StringBuffer("from Goods g ");
if(map!=null && !map.isEmpty())
hql.append("where 1=1 ");
for(String key: map.keySet())
if("goodsName".equals(key) && StringUtils.isNotEmpty(map.get(key).toString()))
hql.append(" and g."+key+" like :"+key);
return super.findPage(page, hql.toString(), map);
有能帮忙补充完整的吗?
ajax你可以用JQuery库,因为你要自己写的话代码有点多。
比如用get()方式提交:
$.get(“你的URL", name: "John", time: "2pm" --这个是提交的参数,键值对,
function(data)--这个是从后台响应后调用的函数。data是后台返回的值。
alert("Data Loaded: " + data);
--在这里你得到数据了就好办了。
--建议你后台组装成json格式的字符串输出,这个用eval(data)得到json对象。然后取出你要的值。
); 参考技术A 用jquery 的ajax方法,异步获取后台的数据数据(最好是json),然后通过动态载入即可。
easyui combobox模糊查询
用easyui框架开发的攻城狮恐怕都遇到过这样一个问题,就是在新增页面combobox下拉框需要支持模糊查询,但是输入不是combobox中Data里面的值的时候,点击保存,依然是可以新增进去的,这样是肯定不行的,那这样是怎么解决的呢,本人就曾经用过一个很笨的办法,就是用combobox中面板隐藏的时候,获取下拉框Data数据,然后遍历判断,如果数据的不是Data中的数据,清空下拉框的值
1 onHidePanel:function(){ 2 var flag = true; 3 var value = $("#cmbManCode").combobox(‘getValue‘); 4 var data = $("#cmbManCode").combobox(‘getData‘); 5 for(var i=0;i<data.length;i++){ 6 if(data[i].manCode == value){ 7 flag = false; 8 } 9 } 10 11 if(flag){ 12 $("#cmbManCode").combobox(‘setValue‘,‘‘); 13 } 14 }
后来发现只需要改两个属性就可以了
editable:true,
limitToList:true,
所以往往不是开发太繁琐,而是因为你没有发现简单的方法
以上是关于怎么利用ajax模糊查询后台数据库并在页面上用下拉框显示的主要内容,如果未能解决你的问题,请参考以下文章