MVC easyui datagrid 注意事項
先注意 javascript switch(x) 的問題,不管x是甚麼 如果case 用數字判斷(一般常用)
反正都加 switch(Number(x))
這就是javascript最大問題 變數型態可以亂用 ..等程式一大就會有莫名其妙問題
言規正傳
丟給 easyui datagrid 只要設
<table id="tt" class="easyui-datagrid" style="width:100%;height:100%">
<thead>
<tr>
<th data-options="field:'id'" >編號</th>
<th data-options="field:'name'" >名字</th>
</tr>
</thead>
</table>
然後丟給它就好.....但要傳回 MVC時 就要小心
傳回的OBJ = $('#Home_Data1').datagrid("getData").rows;
要加rows 不然傳回去跟 MVC的 class Agent 會對不起來..
2.動態問題
所以還是乖乖的用
所以還是用 style 指定
<th data-options="field:'code'" style="width:10%">Code</th>
這樣設 才不亂跑 而且show出的速度 明顯快多了
所以樣式部分還是自己在外部搞,盡量不要交給 easyui處理
反正都加 switch(Number(x))
這就是javascript最大問題 變數型態可以亂用 ..等程式一大就會有莫名其妙問題
言規正傳
1.傳資料問題
MVC C#設一個 class Agent { id , name }用 List<Agent> 傳到後台丟給 easyui datagrid 只要設
<table id="tt" class="easyui-datagrid" style="width:100%;height:100%">
<thead>
<tr>
<th data-options="field:'id'" >編號</th>
<th data-options="field:'name'" >名字</th>
</tr>
</thead>
</table>
然後丟給它就好.....但要傳回 MVC時 就要小心
傳回的OBJ = $('#Home_Data1').datagrid("getData").rows;
要加rows 不然傳回去跟 MVC的 class Agent 會對不起來..
2.動態問題
- <table id="dg"></table>
這一段怎麼試 都不成功, 找到官方demo https://www.jeasyui.com/tutorial/datagrid/datagrid6.php 也跑不出來
- $('#dg').datagrid({
- url:'datagrid_data.json',
- columns:[[
- {field:'code',title:'Code',width:100},
- {field:'name',title:'Name',width:100},
- {field:'price',title:'Price',width:100,align:'right'}
- ]]
- });
所以還是乖乖的用
- <table class="easyui-datagrid" style="width:400px;height:250px"
- data-options="url:'datagrid_data.json',fitColumns:true,singleSelect:true">
- <thead>
- <tr>
- <th data-options="field:'code',width:100">Code</th>
- <th data-options="field:'name',width:100">Name</th>
- <th data-options="field:'price',width:100,align:'right'">Price</th>
- </tr>
- </thead>
- </table>
所以還是用 style 指定
<th data-options="field:'code'" style="width:10%">Code</th>
這樣設 才不亂跑 而且show出的速度 明顯快多了
所以樣式部分還是自己在外部搞,盡量不要交給 easyui處理
留言
張貼留言