您的位置:首页 > 产品设计 > UI/UE

【easyui开发中整理的笔记】

2015-06-25 10:24 671 查看
1.dataBox:时间框

创建时间:<input id="search_createDate" name="create_date" type="text" class="easyui-datebox" editable="false" required="required">
在页面不能直接通过id直接获取选中的时间值

$("#search_createDate").val();//错误做法,获取不到值
只能通过方法来获取

$('#search_createDate').datebox('getValue');//正确做法


ComboBox下拉列表也一样,也要通过getValue方法来获取值。个人感觉easyui复杂的组件如果通过id的方式获取不到值时,可以考虑是否API提供了getValue方法来获取值。

2.window:窗口

修改窗口的title时不能通过xx.attr("title","xx")来实现,而是使用使用下面的形式

$('#window').panel({
title:"修改"
});//将window的title改为"修改"


3.datagrid:表格

问题一:datagtid初始化时加载两次

解决方法:去掉class=“easyui-datagrid”

原因:html代码中利用class声明了datagrid,导致easyUI解析class代码的时候先解析class声明中的datagrid,这样组件就请求了一次url;然后又调用js初始化代码请求一次url。这样导致了重复加载,解决的方法就是只用一种初始化方法来声明easyUI组件以避免重复的提交请求,即删除html中的class声明(class="easyui-datagrid")

即:<table id="DataGrid" class="easyui-datagrid"> 改为 <table id="DataGrid">

参见:jquery easyui的datagrid在初始化的时候会请求两次URL?

问题二:datagrid多表头设计

datagrid清除表格中的数据:

1.使用deleteRow方法

//从已选择列表移除
$("#_remove").click(function() {
//获取选中的记录
var rows = $("#center_selected_dg").datagrid("getSelections");

var len = rows.length;
if (rows.length == 0) {
$.messager.alert('Warning', '请先选择');
return;
} else {
var toDelRows = [];
for (var i = 0; i < len; i++) {
//toDelRows.push(rows[i]);
toDelRows[i] = rows[i];
}
for (var i = 0; i < toDelRows.length; i++) {//不能在上面的for循环中删除,因为每删一行,被删除行后面的行索引就发生变化了
var toDelRow = $("#center_selected_dg").datagrid("getRowIndex", toDelRows[i]);
$("#center_selected_dg").datagrid("deleteRow", toDelRow);
}
}
});
2.使用重新加载空数据的方式

//清除表格数据
$('#center_selected_dg').datagrid('loadData', { total: 0, rows: [] });




参见: easyui datagrid 多表头设置

问题三:datagrid动态绑定列名和数据

EasyUI 1.3.1 datagrid动态绑定列名和数据(使用修改源码的方式)

扩展jquery easyui datagrid 之动态绑定列和数据(使用扩展的方式)

easyUI中判断是否选中了某几条记录。

(rows[]数组代表所有的记录,exists[]数组代表选中的记录)

public class Test {

public static void main(String[] args) {
int rows[] = { 1, 2, 3, 4, 5 };
int exists[] = { 2, 3 };

for (int i = 0 ; i < rows.length ; i++) {
// 判断是否已存在
int j = 0;
for (j = 0 ; j < exists.length ; j++) {
System.out.println("i=" + i + " j=" + j);
if (rows[i] == exists[j]) {
System.out.println("rows[" + i + "]存在,i="+i+" j="+j+"当前不再与j比较");
break;
}
System.out.println("dics");
}

if (j == exists.length) {
System.out.println("rows[" + i + "]不存在");
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: