jQuery MiniUI

 找回密码
 立即注册
查看: 3355|回复: 4
打印 上一主题 下一主题

grid表格查询问题 [复制链接]

Rank: 1

跳转到指定楼层
楼主
发表于 2013-6-26 12:07:19 |只看该作者 |倒序浏览
本帖最后由 ricky_wls 于 2013-6-26 13:07 编辑

是这样,公司找人做了一个程序,现在功能里少一个公员信息表的查询功能,让那人加一直推托没时间不愿弄。无奈自己又不会,只能求助这里了。程序用的是C#+jQuery。看了DEMO自己写了些,但是总的内容表能搜索出来,但是条件搜索结果不会弄了,以下是前台代码:
  1. 关键字:<input class="mini-textbox" id="keywords" />
  2.         <input class="mini-button" type="button" onClick="query()" iconCls="icon-search" text="查询" />
  3.                 </td>
  4.             </tr>
  5.         </table>
  6.     </div>
  7.       <div class="mini-fit">
  8.         <div id="filegrid" multiselect="true" pagesize="20" class="mini-datagrid" style="height: 100%; width: 100%;" url="/handler/member/memtable.ashx" idfield="id" multiselect="true" sizeList="[20,30,50,100]" pageSize="20" >
  9.             <div property="columns">
  10.                 <div type="checkcolumn" width="20"></div>
  11.                 <div type="indexcolumn" headerAlign="center" ><b>编号</b></div>
  12.                 <div field="UserName" width="100" headerCls="red" headerAlign="center" allowsort="true"><b>用户名</b></div>
  13.                 <div field="RealName" width="80" headerAlign="center" allowsort="true"><b>姓名</b></div>
  14.                 <div field="Phone" width="100" headerAlign="center" allowsort="true"><b>手机号</b></div>
  15.                 <div field="City" width="140" headerAlign="center" allowsort="true"><b>地区</b></div>
  16.                 <div field="Email" width="160" headerAlign="center" allowsort="true"><b>邮箱</b></div>
  17.                 <div field="RegDate" width="130" headerAlign="center" allowsort="true"><b>注册时间</b></div>
  18.                 <div field="Ok" width="60" headerAlign="center" allowsort="true"><b>审核状态</b></div>
  19.                 <div field="Group" width="50" headerAlign="center" allowsort="true"><b>管理</b></div>
  20.             </div>
  21.         </div>
  22.     </div>
复制代码
以下是JS代码:
  1. var filegrid;
  2. var keywords;
  3. $(function () {
  4.     mini.parse();
  5.     filegrid = mini.get("filegrid");
  6.     filegrid.load();
  7. });

  8.         
  9. function query() {
  10.         var keywords= document.getElementById("keywords").value;
  11.         filegrid.load({ keywords: keywords });
  12.         }
  13.         $("#keywords").bind("keydown", function (e) {
  14.                 if (e.keyCode == 13) {
  15.                         query();
  16.                         }
  17. });
复制代码
以下是服务器查询代码ashx文件:
  1.   public class memtable : IHttpHandler,IRequiresSessionState
  2.     {
  3.         [WebMethod(EnableSession=true)]
  4.         public void ProcessRequest(HttpContext context)
  5.         {
  6.             context.Response.ContentType = "text/plain";
  7.             context.Response.ContentType = "utf-8";
  8.             Membership.CheckAdmin();
  9.             //分页
  10.             int pageindex = Convert.ToInt32(context.Request["pageIndex"]);
  11.             int pagesize = Convert.ToInt32(context.Request["pageSize"]);
  12.             //字段排序
  13.             String sortField = context.Request["sortField"];
  14.             String sortOrder = context.Request["sortOrder"];
  15.             //查询条件
  16.             String keywords = context.Request["keywords"];

  17.             using (DbContext DbContext = new DbContext())
  18.             {
  19.                 int recordCount = (from c in DbContext.Member where c.RealName == keywords || c.UserName == keywords || string.IsNullOrEmpty(keywords) select c).Count();
  20.                 var list = (from c in DbContext.Member where c.RealName == keywords || c.UserName == keywords || string.IsNullOrEmpty(keywords) select c).Skip(pageindex * pagesize).Take(pagesize).ToList();

  21.                 context.Response.Write("{total:" + recordCount + ",data:" + JsonHelper.SerializeObject(list) + "}");

  22.             }
复制代码
哪位帮帮我,拜托了


Rank: 8Rank: 8

沙发
发表于 2013-6-26 13:03:01 |只看该作者
js里grid.load({ keywords: keywords })
上面不是key,怎么又成keywords了

Rank: 1

板凳
发表于 2013-6-26 13:05:46 |只看该作者
本帖最后由 ricky_wls 于 2013-6-26 13:24 编辑
felt 发表于 2013-6-26 13:03
js里grid.load({ keywords: keywords })
上面不是key,怎么又成keywords了

哦那块刚粗心,没写过来。现在改过来了,该怎么弄下一步。谢谢

Rank: 8Rank: 8

地板
发表于 2013-6-26 13:44:53 |只看该作者
ricky_wls 发表于 2013-6-26 13:05
哦那块刚粗心,没写过来。现在改过来了,该怎么弄下一步。谢谢

var keywords= document.getElementById("keywords").value;
这个不对,你既然用了miniui的textbox,就要用miniui的API去获取值和赋值,
var textbox = mini.get("keywords");
var keywords = textbox.getValue();

grid.load({keywords:keywords})

后台string keywords = request["keywords"];

这里request的是grid.load({key1:key2}) 的 key1

Rank: 1

5#
发表于 2013-6-26 13:53:13 |只看该作者
谢谢,终于搞定了。

Archiver|普加软件

GMT+8, 2024-9-29 00:22 , Processed in 1.016072 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部