easyui datagrid动态列的方法
来源:互联网 发布:大冢爱 知乎 编辑:程序博客网 时间:2024/06/02 14:36
前台代码:
function newDate(jhId) { $.post('../../ashx/operation/baogonglist.ashx?action=listsql', { jh: jhId }, function (data) { alert(data.columns); grid.datagrid({ columns: [data.columns] }).datagrid("loadData", data); },"json"); } $(function () { var kinds = request("id"); alert("df"); grid = $("#td").datagrid({ fit: true, columns: [[]], toolbar: [{ text: "", iconCls: 'icon-add', handler: newDate(kinds) }] }) }) function test(value, row, index) { alert("df"); //if (index == 2) { // return "" //} }
后台代码:
<pre class="html" name="code"> private void listSqlDs(HttpContext context) { string jh,l_jsonstr; plmBLL plm = new plmBLL(); DataSet ds = new DataSet(); jh = context.Request["jh"]; // ds = plmM.getSqlDs(jh); DataTable tab = new DataTable(); DataTable tab2 = new DataTable(); ds = plm.getSqlDs(jh); tab2 = createTable(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { tab.Columns.Add("unitName" + i + ""); DataRow dr = tab2.NewRow(); dr["field"] = "unitName" + i; ; dr["title"] = ds.Tables[0].Rows[i]["unitName"]; dr["align"] = "center"; dr["width"] = 100;
//formatter列
<span style="color:#ff6666;"></span>
dr["formatter"] = "test"; tab2.Rows.Add(dr); } for (int i = 1; i < ds.Tables[0].Columns.Count; i++) { DataRow dr = tab.NewRow(); for (int j = 0; j < ds.Tables[0].Rows.Count; j++) { dr["unitName" + j + ""] = ds.Tables[0].Rows[j][i]; } tab.Rows.Add(dr); } ds.Tables.Add(tab); Hashtable ht = new Hashtable(); ht.Add("total", tab.Rows.Count); ht.Add("columns", tab2); ht.Add("rows", tab); l_jsonstr = JsonConvert.SerializeObject(ht); context.Response.Clear(); context.Response.Write(l_jsonstr); context.Response.End(); }
public DataTable createTable() { DataTable dt = new DataTable("myTable"); //field列 DataColumn columnField = new DataColumn();//创建一列 columnField.DataType = System.Type.GetType("System.String");//数据类型 columnField.ColumnName = "field";//列名 dt.Columns.Add(columnField);//添加到table //title列 DataColumn columnTitle = new DataColumn(); columnTitle.DataType = System.Type.GetType("System.String"); columnTitle.ColumnName = "title"; dt.Columns.Add(columnTitle); //align列 DataColumn columnAlign = new DataColumn(); columnAlign.DataType = System.Type.GetType("System.String"); columnAlign.ColumnName = "align"; dt.Columns.Add(columnAlign); //width列 DataColumn columnWidth = new DataColumn(); columnWidth.DataType = System.Type.GetType("System.Int32"); columnWidth.ColumnName = "width"; dt.Columns.Add(columnWidth);
//formatter列:
DataColumn columnformatter = new DataColumn(); columnformatter.DataType = System.Type.GetType("System.String"); columnformatter.ColumnName = "formatter"; dt.Columns.Add(columnformatter); return dt; }
没加formatter列时的效果:
<img src="http://img.blog.csdn.net/20140903155935301?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTM2MzA5NnM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
加了formatter列时的效果:
<img src="http://img.blog.csdn.net/20140903160041773?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTM2MzA5NnM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
问题:加了formatter后下面的行显示不出来了,我想为第三行加一个按钮。
我的猜想,生成出来的json数据吧formatter后面的参数当做了一个字符串显示,而我在后台处理之后把生成出来的formatter后面参数的双引号去掉后也不能实现,有没有大神能解决。或者有没有更好的easyui datagrid动态生成列的方法.
先谢谢大家的解答:
0 0
- easyui datagrid动态列的方法
- easyui的datagrid动态列
- easyui datagrid 动态列
- easyui datagrid动态列
- 完整的easyui datagrid 动态生成列
- 动态改变easyui datagrid 列的title
- easyui datagrid 动态生成列
- easyui datagrid动态生成列
- easyui dataGrid 动态添加列
- easyui datagrid 动态加载列
- 【EasyUi DataGrid】动态加载列
- Easyui DataGrid动态生成列
- Easyui DataGrid动态生成列
- easyui datagrid 动态生成列
- easyui 动态生成datagrid列
- easyui datagrid 动态生成列
- easyui datagrid 动态生成列
- easyui dataGrid 动态添加列
- redo log
- 空闲信道 评估 收发机状态设置 短地址 长地址 phy 层的作用
- 水平触发和边缘触发的区别
- java 笔试题: xml 解析技术比较
- 流式计算之Storm简介
- easyui datagrid动态列的方法
- 路由器
- Android中Bitmap和Drawable
- zabbix
- 记录frameworks SpellChecker从IME端获取单词提示的过程
- jsp动态加载 图片实现左右滚动效果
- android setCompoundDrawables和setCompoundDrawablesWithIntrinsicBounds区别
- Flume相关参数介绍
- 使用jQuery向后台传送图片