jQuery MiniUI 开发教程 CRUD之:单元格编辑(一)

CRUD之:单元格编辑

参考示例:单元格编辑

一:创建单元格编辑器

<divid="datagrid1"class="mini-datagrid"style="width:800px;height:280px;"

url="../data/AjaxService.aspx?method=SearchEmployees"idField="id"

allowResize="true"pageSize="20"

allowCellEdit="true"allowCellSelect="true"multiSelect="true">

<divproperty="columns">

<divtype="checkcolumn"></div>

<divfield="loginname"width="120"headeralign="center"allowSort="true">员工帐号

<inputproperty="editor"class="mini-textbox"style="width:100%;"/>

</div>

<divfield="gender"width="100"renderer="onGenderRenderer"align="center"headeralign="center">性别

<inputproperty="editor"class="mini-combobox"style="width:100%;"data="Genders"/>

</div>

<divfield="age"width="100"allowSort="true">年龄

<inputproperty="editor"class="mini-spinner"minValue="0"maxValue="200"value="25"style="width:100%;"/>

</div>

<divfield="birthday"width="100"allowSort="true"dateFormat="yyyy-MM-dd">出生日期

<inputproperty="editor"class="mini-datepicker"style="width:100%;"/>

</div>

<divfield="remarks"width="120"headeralign="center"allowSort="true">备注

<inputproperty="editor"class="mini-textarea"style="width:100%;"minheight="80"/>

</div>

<divfield="createtime"width="100"headeralign="center"dateFormat="yyyy-MM-dd"allowSort="true">创建日期</div>

</div>

</div>

设置allowCellEdit和allowCellSelect后,表格为单元格编辑模式。

二:编辑操作

增加行:

functionaddRow(){

varnewRow={name:"NewRow"};

grid.addRow(newRow,0);

}

删除行:

functionremoveRow(){

varrows=grid.getSelecteds();

if(rows.length>0){

grid.removeRows(rows,true);

}

}

保存数据:

functionsaveData(){

//获得增加、删除、修改的记录集合

vardata=grid.getChanges();

varjson=mini.encode(data);

grid.loading("保存中,请稍后......");

$.ajax({

url:"../data/AjaxService.aspx?method=SaveChangedEmployees",

data:{data:json},

type:"post",

success:function(text){

grid.reload();

},

error:function(jqXHR,textStatus,errorThrown){

alert(jqXHR.responseText);

}

});

}

三:服务端处理

publicvoidSaveChangedEmployees()

{

Stringjson=Request["data"];

ArrayListrows=(ArrayList)PluSoft.Utils.JSON.Decode(json);

foreach(Hashtablerowinrows)

{

//根据记录状态,进行不同的增加、删除、修改操作

Stringstate=row["_state"]!=null?row["_state"].ToString():"";

if(state=="added")

{

row["createtime"]=DateTime.Now;

newTestDB().InsertEmployee(row);

}

elseif(state=="removed"||state=="deleted")

{

Stringid=row["id"].ToString();

newTestDB().DeleteEmployee(id);

}

elseif(state=="modified")

{

newTestDB().UpdateEmployee(row);

}

}

}

相关推荐