菜鸟求教,java easyui 怎么用DataGrid 的属性queryParams给后台传参数,DataGrid的代码如下:

<table id="tt" class="easyui-datagrid"
url="mytable" toolbar="#tb"
iconCls="icon-save"
rownumbers="false" pagination="true" fitColumns="true" idField="itemid" iconCls="icon-edit"
>
求高手帮忙

你上面的dataGrid应该只是个本地的例子吧,没有和后台交互吧!因为我看你的url="mytable",感觉不像是action请求;因为你说的queryParams是需要发送远程请求时,才起作用的;

queryParams这个属性的作用其实就是在url的请求中添加额外的参数;

比如:url:“${ctx}/sys/user.action?name=‘小明’ ”,如果你想再附加一个参数age=18;

好比url:“${ctx}/sys/user.action?name=‘小明’&age=18 ”这样的url,这样的话,你就可以利用queryParams这个属性了;

在js中写一个方法

function addParam(){

var param = {“age” :18};

$("#tt").datagrid("load", param);

}

这样就会重新去发送新的url请求,初始化datagrid新的数据了;(我这样的写法是动态的设置请求参数,如果你想直接在datagird初始化中添加参数,你就直接在初始化datagird的时候添加属性queryParams : {参数名:'参数值',})

追问

url="mytable"是servlet映射的路径。我写成这样的:
$('#tt').datagrid({
queryParams:{
action:'参数值'

}

});
但是后台接收不到,大侠,请帮帮忙

追答

首先你先确定发送出的请求是否跳转到mytable对应的类中的service()方法了没有,你用debug断点跟踪一下,如果 进去了,你是用request.getParameter("action");获取参数的吧!

追问

跳转了,我怀疑是我queryParams的写法不对,我用标签的写法,这样对不对:

追答

...........真服了你,你这样写当然不对了啊,html标签里面没有对象这个概念的啊!你为什么一定要用html标签初始化啊!用js不行嘛!

追问

嗯,我开始的时候是用标签初始化表格的,后来我又加个js, $('#tt').datagrid({
queryParams:{
action:'参数值'
} });
但是这样不管用,所以我怀疑是不是js和标签初始化不能同时用,不知道是不是这个问题。如果是的话,我就全部改成js初始化。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-02-23
$('#tt').datagrid({
queryParams:{
参数名:'参数值',
参数名:'参数值'
}
});
这样就可以了 #tt是通过id获取到你的datagrid表格,希望能帮到你

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网