datagrid对应的div块叫list_data;
要想把datagrid中的数据放到form中修改,核心问题就是如何从datagrid取,和如何放到form的问题。
如何取
用EasyUI在datagrid提供的getChecked方法,取得所有checked的数据,因为我是要修改,所以只取第一条
java
var rows = $("#list_data").datagrid("getChecked");
if(rows.length > 1) alert("只能选择一条记录");
else{
var row = rows[0];
if(row){
dialog_detail("修改", "edit", row);
}
}
如何放
已经得到记录对象row了,该如何放置到form中呢?
这里form的id是addPersonForm,
首先清空form表单,然后利用form组件的load方法读取row对象(这里得确保form中字段的name同row中的字段是一致的)
java
$("#addPersonForm").form("clear");
if(row != ""){
$("#addPersonForm").form("load",row);
if(row.daddy != null ) $("#daddy_identy").textbox("setValue",row.daddy.identy);
if(row.mother != null) $("#mother_identy").textbox("setValue",row.mother.identy);
}
这儿可以发现,form表单中daddy_identy字段对应的是row(object)中daddy(object)的identy字段,所以在form(‘load’)后需要额外设置。
注意:EasyUI input class=”easyui-textbox”设置字段不可以用$(“#”).val来实现,只能用textbox组件的setValue方法