代码经过精心改良,可以直接使用,具体看注释吧.
1,前台,代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LineInfoManagement.aspx.cs" Inherits="LMX.XiAnPeiHua.Web.Admin.UnitManagement.LineInfoManagement" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>线路信息设置</title>
<script src="/js/jquery-1.7.1.min.js"></script>
<script src="/js/jquery-easyui-1.4.2/jquery.easyui.min.js"></script>
<script src="/js/jquery-easyui-1.4.2/locale/easyui-lang-zh_CN.js"></script>
<link href="/js/jquery-easyui-1.4.2/themes/metro-blue/easyui.css" rel="stylesheet" />
<link href="/js/jquery-easyui-1.4.2/themes/icon.css" rel="stylesheet" />
<link href="/css/style.css" rel="stylesheet" />
<link href="/css/admin.css" rel="stylesheet" />
<script type="text/javascript">
$(document).ready(function () {
fLoadTable();//加载参数
$('#tt').datagrid('reload', {
Method: 'FirstLoad'
});
$('#unit_id').combobox({
onSelect: function (rec) {
//alert(rec.ID);
//$('#site_id').combobox('reload', location.href + '?type=LoadSite&UnitID=' + rec.ID);
var vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=LoadSite&UnitID=' + rec.ID;
$('#site_id').combobox({
url: vUrl,
onLoadSuccess: function () {
var data = $('#site_id').combobox('getData');
if (data.length > 0) {
$('#site_id').combobox('select', data[0].ID);
}
else {
$('#site_id').combobox('clear');
}
}
})
}
});
})
function fLoadTable() {
$('#tt').datagrid({
title: '',
url: location.href,
pagination: true,
pageSize: 20,
pagePosition: 'top',
striped: true,
//singleSelect: true,
ctrlSelect: true,//在启用多行选择的时候允许使用Ctrl键+鼠标点击的方式进行多选操作。
rownumbers: true,
columns: [[
{ field: 'unit_id', title: 'unit_id', align: 'center', hidden: true },
{ field: 'site_id', title: 'site_id', align: 'center', hidden: true },
{ field: 'line_id', title: 'line_id', align: 'center', hidden: true },
{ field: 'ckey', title: '线路编号', align: 'center' },
{ field: 'name', title: '线路名称', align: 'center' },
{ field: 'remark', title: '备注', align: 'center' }
]],
toolbar: [{
text: '增加',
iconCls: 'icon-add',
handler: function () {
$('#dlg').dialog('open').dialog('setTitle', '新增线路信息');
$('#dlg_form').form('clear');
$('#unit_id').combo('readonly', false); // 禁用只读模式
$('#site_id').combo('readonly', false); // 禁用只读模式
$('#unit_id').combobox('reload', '/Admin/UnitManagement/LineInfoManagement.aspx?type=LoadUnit');
vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=add';
}
}, {
text: '修改',
iconCls: 'icon-edit',
handler: function () {
var row = $('#tt').datagrid('getSelected');
if (row) {
$('#dlg').dialog('open').dialog('setTitle', '修改线路信息');
$('#unit_id').combobox('reload', '/Admin/UnitManagement/LineInfoManagement.aspx??type=LoadUnit');
$('#site_id').combobox('reload', '/Admin/UnitManagement/LineInfoManagement.aspx?type=LoadSite');
$('#dlg_form').form('load', row);
$('#unit_id').val(row.unit_id);
$('#site_id').val(row.line_id);
$('#ckeyPre').val(row.site_id);
$('#unit_id').combo('readonly', true); // 启用只读模式
$('#site_id').combo('readonly', true); // 启用只读模式
vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=modify&line_id=' + row.line_id;
} else {
$.messager.alert('请至少选中一项作为修改项.')
}
}
}, '-', {
text: '删除',
iconCls: 'icon-remove',
handler: function () {
var row = $('#tt').datagrid('getSelected');
if (row) {
$.messager.confirm('提示', '您确定要删除这个线路信息吗?', function (r) {
if (r) {
vUrl = '/Admin/UnitManagement/LineInfoManagement.aspx?type=del&site_id=' + row.site_id + '&unit_id=' + row.unit_id + '&line_id=' + row.line_id;
$.ajax({
type: "POST",
url: vUrl,
success: function (json) {
var json = eval('(' + json + ')');
if (json.result == true) {
$.messager.show({
title: 'Success',
msg: '删除成功!'
});
$('#dlg').dialog('close');
// close the dialog
$('#tt').datagrid('reload'); // reload the user data
} else {
$.messager.show({
title: 'Error',
msg: '删除失败,请稍后再试!'
});
$('#dlg').dialog('close');
// close the dialog
$('#tt').datagrid('reload'); // reload the user data
}
}
});
}
});
}
else {
$.messager.alert("请至少选中一项作为删除项");
}
}
}]
});
};
function fSaveData() {
$('#dlg_form').form('submit', {
url: vUrl,
onSubmit: function () {
return $(this).form('validate');
},
success: function (sjson) {
var json = eval('(' + sjson + ')');
if (json.result == true) {
$.messager.show({
title: 'Success',
msg: json.msg ? json.msg : '操作成功!'
});
$('#dlg').dialog('close'); // close the dialog
$('#tt').datagrid('reload'); // reload the user data
} else {
$.messager.show({
title: 'Error',
msg: json.msg ? json.msg : '操作失败,请稍后再试!'
});
$('#dlg').dialog('close'); // close the dialog
}
},
error: function () {
$.messager.show({
title: 'Error',
msg: json.msg ? json.msg : '操作失败,请稍后再试!'
});
$('#dlg').dialog('close'); // close the dialog
}
});
}
</script>
</head>
<body>
<div class="divForTable">
<table id="tt" style="width: 100%; height: 600px; $(this).width() * 0.2;">
</table>
</div>
<div id="dlg" class="easyui-dialog" style="width: 300px; height: 350px; padding: 5px 10px"
data-options="closed:true,buttons:'#dlg-buttons',modal:true">
<form id="dlg_form" method="post">
<div class="fitem">
<label>所属电网:</label>
<input id="unit_id" name="unit_id" class="easyui-combobox" required="true" data-options="valueField:'ID',textField:'Name',editable:false" />
</div>
<div class="fitem">
<label>所属变电所:</label>
<input id="site_id" name="site_id" class="easyui-combobox" required="true" data-options="valueField:'ID',textField:'Name',editable:false" />
</div>
<%-- <div class="fitem">
<label>线路编号:</label>
<input name="ckeyPre" id="ckeyPre" class="easyui-validatebox" readonly="true" style="width: 30px;" />
</div>--%>
<div class="fitem">
<label>名称:</label>
<input name="name" id="name" class="easyui-validatebox" required="true" />
</div>
<div class="fitem">
<label>备注:</label>
<input name="remark" id="remark" class="easyui-validatebox" />
</div>
<div class="line" style="margin-top: 15px;">
说明:线路编号由8位数字组成,前5位是所属变电所编号,最后3位代表线路内部编号.(编号在前端不显示,后台自动添加)
</div>
</form>
</div>
<div id="dlg-buttons">
<a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-ok" onclick="fSaveData()">保存
</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-cancel"
onclick="javascript:$('#dlg').dialog('close')">取消
</a>
</div>
</body>
</html>
2,后台代码如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Request.QueryString["from"] == "LoadF_ParentItemCode")
{
using (item_energyEntities ent = new item_energyEntities())
{
List<t_dt_energyitemdict> list = (from c in ent.t_dt_energyitemdict where c.F_EnergyItemType == "A" select c).ToList();
if (list != null && list.Count != 0)
{
var vData = from m in list select new { ID = m.F_EnergyItemCode, Name = m.F_EnergyItemName };
Response.Write(JsonHelper.Serialize(vData));
}
else
{
Response.Write(null);
}
Response.End();
}
}
if (Request.Form["Method"] == "FirstLoad")
{
List<t_dt_energyitemdict> list = DataLoader.GetEnergyItemList();
int page = string.IsNullOrWhiteSpace(Request["page"]) ? 1 : Int32.Parse(Request["page"]);
int rows = string.IsNullOrWhiteSpace(Request["rows"]) ? 1 : Int32.Parse(Request["rows"]);
string order = string.IsNullOrWhiteSpace(Request["order"]) ? "ASC" : Request["order"].ToUpper();
string sort = string.IsNullOrWhiteSpace(Request["sort"]) ? "ID" : Request["sort"];
IQueryable<t_dt_energyitemdict> query = CommonTools.DataSorting<t_dt_energyitemdict>(list.AsQueryable(), sort, order).Skip((page - 1) * rows).Take(rows);
Response.Write(JsonHelper.Serialize(new { total = list.Count, rows = query }));
Response.End();
}
if (Request.QueryString["type"] == "add")
{
string strMsg;
if (AddObject(out strMsg))
{
Response.Write(JsonHelper.Serialize(new { result = true, msg = strMsg }));
}
else
{
Response.Write(JsonHelper.Serialize(new { result = false, msg = strMsg }));
}
Response.End();
}
if (Request.QueryString["type"] == "modify")
{
string strMsg;
if (ModifyObject(out strMsg))
{
Response.Write(JsonHelper.Serialize(new { result = true, msg = strMsg }));
}
else
{
Response.Write(JsonHelper.Serialize(new { result = false, msg = strMsg }));
}
Response.End();
}
if (Request.QueryString["type"] == "del")
{
string strMsg;
if (DelObject(out strMsg))
{
Response.Write(JsonHelper.Serialize(new { result = true, msg = strMsg }));
}
else
{
Response.Write(JsonHelper.Serialize(new { result = false, msg = strMsg }));
}
Response.End();
}
}
}
/// <summary>
/// 增加一个对一个对象.
/// </summary>
/// <returns></returns>
private bool AddObject(out string strMsg)
{
string F_EnergyItemCode = Request.Form["F_EnergyItemCode"];
string F_EnergyItemName = Request.Form["F_EnergyItemName"];
string F_ParentItemCode = Request.Form["F_ParentItemCode"];
string F_EnergyItemType = Request.Form["F_EnergyItemType"];
string F_EnergyItemUnit = Request.Form["F_EnergyItemUnit"];
string F_EnergyItemFml = Request.Form["F_EnergyItemFml"];
string F_EnergyItemState = Request.Form["F_EnergyItemState"];
short sF_EnergyItemState = 0;
if (short.TryParse(F_EnergyItemState, out sF_EnergyItemState))
{
sF_EnergyItemState = short.Parse(F_EnergyItemState);
}
bool bPass = false;
try
{
using (item_energyEntities ent = new item_energyEntities())
{
t_dt_energyitemdict aNewModel = new t_dt_energyitemdict()
{
F_EnergyItemCode = F_EnergyItemCode,
F_EnergyItemState = sF_EnergyItemState,
F_EnergyItemType = F_EnergyItemType,
F_EnergyItemUnit = F_EnergyItemUnit,
F_EnergyItemName = F_EnergyItemName,
F_EnergyItemFml = F_EnergyItemFml,
F_ParentItemCode = F_ParentItemCode
};
ent.t_dt_energyitemdict.Add(aNewModel);
if (ent.SaveChanges() > 0)
{
bPass = true;
strMsg = "增加成功。";
}
else
{
bPass = false;
strMsg = "增加失败,请稍后再试。";
}
}
}
catch (Exception ex)
{
strMsg = ex.Message;
bPass = false;
}
return bPass;
}
/// <summary>
/// 更新一个对象.
/// </summary>
/// <returns></returns>
private bool ModifyObject(out string strMsg)
{
string F_EnergyItemCode = Request.Form["F_EnergyItemCode"];
string F_EnergyItemName = Request.Form["F_EnergyItemName"];
string F_ParentItemCode = Request.Form["F_ParentItemCode"];
string F_EnergyItemType = Request.Form["F_EnergyItemType"];
string F_EnergyItemUnit = Request.Form["F_EnergyItemUnit"];
string F_EnergyItemFml = Request.Form["F_EnergyItemFml"];
string F_EnergyItemState = Request.Form["F_EnergyItemState"];
short sF_EnergyItemState = 0;
if (short.TryParse(F_EnergyItemState, out sF_EnergyItemState))
{
sF_EnergyItemState = short.Parse(F_EnergyItemState);
}
bool bPass = false;
try
{
using (item_energyEntities ent = new item_energyEntities())
{
t_dt_energyitemdict aModel = (from c in ent.t_dt_energyitemdict where c.F_EnergyItemCode == F_EnergyItemCode select c).FirstOrDefault();
if (aModel != null)
{
aModel.F_EnergyItemCode = F_EnergyItemCode;
aModel.F_EnergyItemName = F_EnergyItemName;
aModel.F_ParentItemCode = F_ParentItemCode;
aModel.F_EnergyItemType = F_EnergyItemType;
aModel.F_EnergyItemUnit = F_EnergyItemUnit;
aModel.F_EnergyItemFml = F_EnergyItemFml;
aModel.F_EnergyItemState = sF_EnergyItemState;
if (ent.SaveChanges() > 0)
{
bPass = true;
strMsg = "修改成功。";
}
else
{
bPass = false;
strMsg = "修改失败,请稍后再试。";
}
}
else
{
bPass = false;
strMsg = "不存在此记录,请稍后再试。";
}
}
}
catch (Exception ex)
{
strMsg = ex.Message;
bPass = false;
//throw;
}
return bPass;
}
/// <summary>
/// 删除一个对象.
/// </summary>
/// <returns></returns>
private bool DelObject(out string strMsg)
{
string F_EnergyItemCode = Request.QueryString ["F_EnergyItemCode"];
bool bPass = false;
using (item_energyEntities ent = new item_energyEntities())
{
t_dt_energyitemdict aModel = (from c in ent.t_dt_energyitemdict where c.F_EnergyItemCode == F_EnergyItemCode select c).FirstOrDefault();
try
{
if(aModel!=null)
{
ent.t_dt_energyitemdict.Remove(aModel);
if(ent.SaveChanges()>0)
{
bPass = true;
strMsg = "删除成功。";
}
else
{
bPass = false;
strMsg = "删除失败,请稍后再试。";
}
}
else
{
bPass = false;
strMsg = "不存在此记录,请稍后再试。";
}
}
catch (Exception ex)
{
bPass = false;
strMsg = ex.Message;
}
}
return bPass;
}
- Easyui DataGrid DateRange Filter 漂亮实用的日期区间段筛选功能
自定义扩展Jquery easyui datagrid filter组件实现对日期类型区间段的筛选功能.显示效果如一下 是不是非常实用 引用的jquery 组件是 Date Range Picker ...
- DataTables VS EasyUI DataGrid 基础应用 转
DataTables中文网推出了 第一篇 关于DataTables和其他表格插件比较后,为了把让这个比较更有意义,更能帮助到大家,DataTables中文网 做了问卷调查,根据小伙伴们的填写我归纳了一 ...
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
easyui datagrid 禁止选中行 没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...
- jQuery EasyUI DataGrid Checkbox 数据设定与取值
纯粹做个记录,以免日后忘记该怎么设定. 这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数 ...
- 扩展jquery easyui datagrid编辑单元格
扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...
- EasyUI Datagrid 鼠标悬停显示单元格内容 复制代码
EasyUI Datagrid 鼠标悬停显示单元格内容 ,halign:, align: 0 « 上一篇:LINQ to Entities 中的查询» 下一篇:去掉字符串中的非数字字符 posted ...
- easyui datagrid checkbox multiple columns have been done do
lengku1987 2013-01-06 22:27:47 Sponsored Links easyui datagrid checkbox multiple columns have ...
- easyui datagrid中 多表头方法总结
easyui datagrid中怎么设置表头成多行显示呢?其实很简单,就是给datagrid的columns属性设置成多个数组就行了.下面直接看例子吧,这是一个两行表头的,按照此方法,还可以设置三行表 ...
- 让easyui datagrid支持bootstrap的tooltip
让easyui datagrid支持bootstrap的tooltip 发表于 下午 1:53 by ylpro.net & 分类 Java. Easyui在1.3.3版本之前是不支持tool ...
随机推荐
- 开启PHP的伪静态
1.检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有 apache2handl ...
- Erlang 初学者技巧及避免的陷阱
1. 传参或在匿名函数内慎用self() 通常在做消息传递或新建进程的时候我们需要将当前进程的Pid发给目标进程以便接收返回信息,但初学者不留意容易犯以下错误 spawn(fun() -> lo ...
- javascript array sort()
[5,10,1].sort(); 结果[1,10,5] 有点出人意料. array.sort( sortFunction )可选-指定如何比较元素顺序的函数名称 如果省略sortFunction参数, ...
- DIV+CSS自适应布局
自适应布局分两类:高度和宽度,方法有很多,我用三列布局举例,我就列几个通俗易懂的例子呗,懂了三列的,两列的原理一样,呵呵哒. 效果图如下:高度自适应——宽度自适应 1,高度自适应 ...
- [LintCode] Trapping Rain Water 收集雨水
Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...
- ES6的promise对象应该这样用
ES6修补了一位Js修真者诸多的遗憾. 曾几何时,我这个小白从js非阻塞特性的坑中爬出来,当我经历了一些回调丑陋的写法和优化的尝试之后,我深深觉得js对于多线程阻塞式的开发语言而言,可能有着其太明显的 ...
- ANT_HOME is set incorrectly or ant could not be located .Please set ANT_HOME.
今天配置ant,奶奶的老是报错. 因为环境变量 ANT_HOME 和 JAVA_HOME 设置值不能有“;” ,把分号去掉即可成功了. 神奇!
- Unity3D 物体跟随鼠标旋转
float speed=1000f; void Update () { if (Input.GetMouseButton (0)) { transform.Rotate (0,-Input.GetAx ...
- Proxy
Proxy: Script: http://apgutmg01:8080/array.dll?Get.Routing.Script Server: apgutmg01 Port: 8080
- 最近在新公司的一些HTML学习
还是先把代码贴在这 后期再写感想 <!DOCTYPE html> <head> <meta http-equiv="x-ua-compatible" ...