最近在使用easyui的datagrid,在可編輯表格中添加一個下拉框,查了下API,可以設置type : 'combobox',來做下拉框,這下拉框是有了,可是這后台數據怎么傳過來呢,通過查API可以知道,設置URL屬性就能從一個URL遠程站點請求數據,或者設置data屬性也行,但是本人兩種方式都試了,這個數據就是現實不出來,原來是因為data這里需要放一個json格式的數據才行,我之前放的也是json,但是其中又嵌套了好幾層,最后重新修改,OK啦!記錄
- $.ajax({
- url:'packagetype.do',
- dataType : 'json',
- type : 'POST',
- async:false,
- success: function (data){
- <span style="white-space:pre"> </span>packageTypeList = data;
- }
- });
- $('#businessVersion').datagrid(
- {
- url : "VersionList.do?id="
- + $("#bId").val(),
- idField : 'id',
- pageSize : '10',
- pageNumber : '1',
- pageList : [ 5, 10 ],
- columns : [ [
- {
- field : 'id',
- checkbox : true
- },
- {
- field : 'fileName',
- title : '安裝包名稱',
- width : 320,
- align : 'center',
- editor : {
- type : 'text',
- required: true
- }
- },
- {
- field : 'versionNo',
- title : '版本號',
- width : 220,
- align : 'center',
- editor : {
- type : 'text',
- required: true
- }
- },
- {
- field : 'packageType',
- title : '安裝包類型',
- width : 220,
- align : 'center',
- formatter: function(value,row,index) {
- return row['packageName'];
- },
- editor : {
- type : 'combobox',
- options : {
- data: packageTypeList,
- // url:'packagetype.do',
- valueField: 'id',
- textField: 'name',
- panelHeight: 'auto',
- required: true ,
- editable:false
- }
- }
- },
- {
- field : 'operation',
- title : '操作',
- width : 320,
- align : 'center',
- formatter : function(value, row, index) {
- var links = "";
- if (row['fileName'] == '') {
- links = links + " ";
- links = links
- + "<a href=\"javascript:void(0);\" "
- + "onclick=\"fileUpload("
- + index + ");\" >上傳文件</a>";
- links = links + " ";
- links = links
- + "<input type='text' id='packUrl"
- + index
- + "' style='display:none;'/>";
- } else {
- links = links + " ";
- links = links
- + "<a href=\"javascript:void(0);\" "
- + "onclick=\"fileDownload('"
- + row['packageAdress']
- + "');\" >下載文件</a>";
- links = links + " ";
- }
- return links;
- }
- } ] ],
- toolbar : [
- {
- id : "businessAdd",
- text : '新增',
- iconCls : 'icon-add',
- handler : function() {
- $('#businessVersion').datagrid(
- 'endEdit', lastIndex);
- $('#businessVersion').datagrid(
- 'appendRow', {
- fileName : '',
- versionNo : '',
- creator : '',
- packageType : '',
- operation : ''
- });
- var lastIndex = $('#businessVersion')
- .datagrid('getRows').length - 1;
- $('#businessVersion').datagrid(
- 'selectRow', lastIndex);
- $('#businessVersion').datagrid(
- 'beginEdit', lastIndex);
- }
- },
- {
- id : "bDestory",
- text : '撤消',
- iconCls : 'icon-undo',
- handler : function() {
- $('#businessVersion').datagrid(
- 'rejectChanges');
- }
- } ]
- });