所有的工具条都是为数据列表服务的,所以,citable对象先去找他的父亲,父亲的选择器是
class="cidatalist",找到父亲节点之后,去向再下找工具栏中具体的工具条(toolbar),然后给工具栏对象绑定相应的点击事件。
触发点击事件之后,先索引页面中的参数,收集到msg对象中。然后调用封装的向后台发请求的相对应的方法。
以删除更新为例子:
// 为删除按钮设置代码
$(citable).parents(".cidatalist").find(".cibtndelete").each(
function (i, btn) {
$(btn).bind("click", function () {
// 按钮在数据表格区
if ($(this).parents(".cidatalist").find(".citable").length > 0) {
// 获取数据表名
var citableid = $(this).attr("data-citableid");
var citableObj = undefined;
if (citableid != undefined && citableid != "") {
citableObj = $("#" + citableid);
}
if (citableObj.length == 0) {
showMessage("页面设计错误[CIF-5000]:没有找到citable id=“"+ citableid + "”,请修改后再试!", -1,"#9966cc");
return;
}
if (!citableObj.attr("citblkeyfld")) {
showMessage("数据列表“" + citableid+ "”页面设计错误[CIF-5002]缺少数据表键列名“citblkeyfld”属性设置,请修改后再试!");
return;
}
var checkboxName = $(btn).attr("data-cidelbycbname");
if (checkboxName == undefined || checkboxName == "") {
showMessage("页面设计错误[CIF-5003]数据列表关联的删除按钮缺少“data-cidelbycbname”属性设置,请修改后再试!",-1, "#9966cc");
return;
}
if ($("input[name='" + checkboxName + "']").length == 0) {
showMessage("页面设计错误[CIF-5004]:根据删除按钮的data-cidelbycbname属性设置"+ $(btn).prop("outerHTML")+ "没有找到name属性为“" + checkboxName + "”的checkbox控件,请修改后再试!", -1,"#9966cc");
return;
}
var citblname = getTableName(citableObj);
var citblwheids = "";
var selCount = 0;
$("input[name='" + checkboxName + "']").each(
function (cbindex, cb) {
if (cb.checked) {
if (citblwheids != "")
citblwheids += ",";
citblwheids += $(cb).parents("tr")
.attr("data-citrid");
selCount++;
}
});
if (citblwheids == "") {
showMessage("请先选择所需删除的行。");
return;
}
if (confirm("确定要删除选中的" + selCount + "个数据吗?")) {
if (citblwheids != null) {
var citblkeyfld = $(citableObj)
.attr("citblkeyfld");
var citblwhecls = citblkeyfld + " IN ("
+ citblwheids + ")";
ciUpdateDataRow(citableid, citblname, "D", [],
[], citblwhecls);
var ciondeleted = $(this).attr("data-ciondeleted");
if (ciondeleted != ""
&& ciondeleted != undefined) {
var data = {
citblname: citblname,
citblwhecls: citblwhecls,
citblkeyfld: citblkeyfld,
citblwheids: citblwheids
};
try {
eval(ciondeleted);
} catch (e) {
showMessage("运行错误[CIF30034]回调ciondeleted时发生错误:" + e);
}
}
}
ciGetDataRows(-1, citableid);
// 取消全选按钮的设置
$(btn).parents(".cidatalist")
.find("input[data-cicheckbyname]").each(
function (index, cb) {
cb.checked = false;
});
}
} else if ($(this).parents(".cidatalist").find(".cieditor").length > 0) {
var editor = this.parents(".cidatalist")
.find(".cieditor");
var citblwhecls = editor.attr("citblwhecls");
var citblname = getTableName(editor);
if (confirm("确定要删除当前的数据吗?")) {
ciUpdateDataRow(editor.attr("id"), citblname, "D",
[], [], citblwhecls);
var citblkeyfld = $(citableObj).attr("citblkeyfld");
var ciondeleted = $(this).attr("data-ciondeleted");
if (ciondeleted != "" && ciondeleted != undefined) {
var data = {
citblname: citblname,
citblwhecls: citblwhecls,
citblkeyfld: citblkeyfld,
citblwheids: ""
};
try {
eval(ciondeleted);
} catch (e) {
showMessage("ciondeleted运行错误:" + e);
}
}
}
ciGetDataRow(editor);
} // end if
});// button bind click
});// button delete each
----------------------------------------------------
data-ciondeleted="ciOnDeleted(data)"
var ciondeleted = $(this).attr("data-ciondeleted");
eval(ciondeleted);
if (confirm("确定要删除当前的数据吗?")) {
iUpdateDataRow(editor.attr("id"), citblname, "D",
[], [], citblwhecls);
toolbar's position
最新推荐文章于 2022-04-15 15:04:35 发布