jquery easyui datagrid toolbar动态赋值的问题,大家帮忙分析一下
html代码<tableid="tt"></table>js代码vartemplateColumns=[[]];vargetScriptUrl='getEntityLis...
html代码
<table id="tt">
</table>
js代码
var templateColumns = [ [] ];
var getScriptUrl = 'getEntityList.action';
var toolbar=[ [] ];
$(function() {
$.ajax({
async : false,
url : getScriptUrl,
dataType : 'json',
data:{'nodeId':'<%=nodeId%>'},
success : function(data) {
templateColumns = [ data.columns ];
toolbar = data.toolbar;
}
});
$('#tt').datagrid({
title : 'My Title',
width : 600,
height : 350,
dataType : 'json',
url : getScriptUrl,
columns : templateColumns,
toolbar : toolbar,
pagination : true,
pageSize : 5, //每页记录数
pageList : [ 5, 10, 15, 20, 30, 50 ]
//分页记录数数组
});
});
-----------------------------------------------
后台代码
public void getEntityList() throws IOException {
String strJson =
"{ 'total':20, 'rows':[{'name':'zhangsan01','age':'21','hobby':'001'},{'name':'zhangsan02','age':'21','hobby':'001'},{'name':'zhangsan03','age':'21','hobby':'001'},{'name':'zhangsan04','age':'21','hobby':'001'},{'name':'zhangsan05','age':'21','hobby':'001'}],'columns':[{'field':'name','title':'Name','width':100,'align':'center'},{'field':'age','title':'Age','width':100,'align':'center'},{'field':'hobby','title':'Hobby','width':100,'align':'center'}],'toolbar':[{'text': '添加','iconCls' : 'icon-add','handler':'function(){open_dialog_add();}'}]}";
strJson = strJson.replace("'", "\"");
Struts2Utils.getResponse().setCharacterEncoding("utf-8");
PrintWriter out = Struts2Utils.getResponse().getWriter();
out.write(strJson);
out.flush();
out.close();
}
问题就出在
'toolbar':[{'text': '添加','iconCls' : 'icon-add','handler':'function(){open_dialog_add();}'}]
中的
'handler':'function(){open_dialog_add();}'
加上这句话前台就加载不出数据来
'handler':''这样可以显示出来
请问这个'handler'后面的字符串应该如何拼接?
请大家帮忙看一下,谢谢! 展开
<table id="tt">
</table>
js代码
var templateColumns = [ [] ];
var getScriptUrl = 'getEntityList.action';
var toolbar=[ [] ];
$(function() {
$.ajax({
async : false,
url : getScriptUrl,
dataType : 'json',
data:{'nodeId':'<%=nodeId%>'},
success : function(data) {
templateColumns = [ data.columns ];
toolbar = data.toolbar;
}
});
$('#tt').datagrid({
title : 'My Title',
width : 600,
height : 350,
dataType : 'json',
url : getScriptUrl,
columns : templateColumns,
toolbar : toolbar,
pagination : true,
pageSize : 5, //每页记录数
pageList : [ 5, 10, 15, 20, 30, 50 ]
//分页记录数数组
});
});
-----------------------------------------------
后台代码
public void getEntityList() throws IOException {
String strJson =
"{ 'total':20, 'rows':[{'name':'zhangsan01','age':'21','hobby':'001'},{'name':'zhangsan02','age':'21','hobby':'001'},{'name':'zhangsan03','age':'21','hobby':'001'},{'name':'zhangsan04','age':'21','hobby':'001'},{'name':'zhangsan05','age':'21','hobby':'001'}],'columns':[{'field':'name','title':'Name','width':100,'align':'center'},{'field':'age','title':'Age','width':100,'align':'center'},{'field':'hobby','title':'Hobby','width':100,'align':'center'}],'toolbar':[{'text': '添加','iconCls' : 'icon-add','handler':'function(){open_dialog_add();}'}]}";
strJson = strJson.replace("'", "\"");
Struts2Utils.getResponse().setCharacterEncoding("utf-8");
PrintWriter out = Struts2Utils.getResponse().getWriter();
out.write(strJson);
out.flush();
out.close();
}
问题就出在
'toolbar':[{'text': '添加','iconCls' : 'icon-add','handler':'function(){open_dialog_add();}'}]
中的
'handler':'function(){open_dialog_add();}'
加上这句话前台就加载不出数据来
'handler':''这样可以显示出来
请问这个'handler'后面的字符串应该如何拼接?
请大家帮忙看一下,谢谢! 展开
1个回答
展开全部
我刚自己写的,像这样拼接
String ss = "$(#xx).attr({value:'不好啊'},onclick:"+"function bb(){alert('ddd');});";
你的就是:
String strJson = "xxxxx这是前面的xx,'handler':"+"function(){open_dialog_add();";
String ss = "$(#xx).attr({value:'不好啊'},onclick:"+"function bb(){alert('ddd');});";
你的就是:
String strJson = "xxxxx这是前面的xx,'handler':"+"function(){open_dialog_add();";
追问
好人,再帮我看看,还是不行啊?返回的json的结果如下图,你看看哪块拼接错了?
json后台字符串的值如下:
'toolbar':[{'text': '添加','iconCls' : 'icon-add','handler':':function(){open();}'}]
我想在页面输出的格式如下:
toolbar : [ {text : '添加',iconCls : 'icon-add',handler : function() {open();}}]
如果把'toolbar' 中'handler':':function(){open();}'去掉就可以,这个function应该怎么拼接
追答
'toolbar':[{'text': '添加','iconCls' : 'icon-add',handler : function(){open();} }]
这样试试看
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询