首页 > 代码库 > AJAX增删查改------前台事件

AJAX增删查改------前台事件

//创建js序列化对象

System.Web.Script.Serialization.JavaScriptSerializer js = new System.Web.Script.Serialization.JavaScriptSerializer();

//将数据序列化成JSON字符串。匿名类。 string str = js.Serialize(new { UList = list, MyPageBar = pageBar });

getMonth() 方法从0月份开始——11月份结束

//序列化json格式后日期(毫秒数)转成日期格式

//parseInt() 函数可解析一个字符串,并返回一个整数。

技术分享
1         function ChangeDateFormat(cellval) {
2             var date = new Date(parseInt(cellval.replace("/Date(", "").replace(")/", ""), 10));
3             var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
4             var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
5             return date.getFullYear() + "-" + month + "-" + currentDate;
6         }
将序列化成json格式后日期(毫秒数)转成日期格式

注意:一定要表格所有的数据加载完成了,才能给表格中的超链接添加单击事件

技术分享
 1  $(".deletes").click(function () {
 2                 $.messager.confirm("删除提示", "你确定要删除该记录吗?", function (r) {
 3                     if (r) {//如果该条件成立,表示用户单击了"确定"按钮
 4                         $.post("DeleteUser.ashx", { "id": id }, function (data) {
 5                             if (data =http://www.mamicode.com/= "ok") {
 6                                 $.messager.show({
 7                                     title: 提示,
 8                                     msg: 删除成功,
 9                                     showType: show
10                                 });
11                             } else {
12                                 $.messager.alert("提示","删除失败!!","error");
13                             }
14                         });
15                     }
16                 });
17             });
弹出消息框

 

技术分享
1     <link href=http://www.mamicode.com/"../Css/tableStyle.css" rel="stylesheet" />
2     <link href=http://www.mamicode.com/"../Css/themes/default/easyui.css" rel="stylesheet" />
3     <link href=http://www.mamicode.com/"../Css/pageBarStyle.css" rel="stylesheet" />
4     <link href=http://www.mamicode.com/"../Css/themes/icon.css" rel="stylesheet" />
5     <script src=http://www.mamicode.com/"../Js/jquery-1.7.1.js"></script>
6     <script src=http://www.mamicode.com/"../Js/jquery.easyui.min.js"></script>
7     <script src=http://www.mamicode.com/"../Js/easyui-lang-zh_CN.js"></script>
导入样式文件

 

技术分享
 1    $(function () {
 2             //隐藏详细页
 3             $("#detailDiv").css("display", "none");
 4             //隐藏增加用户
 5             $("#addUserDiv").css("display", "none");
 6             //隐藏修改用户
 7             $("#editUserDiv").css("display", "none");
 8             //$("#dlg").dialog(‘close‘);
 9             loadUserInfo(1);
10             //添加增加用户单击事件
11             $("#addUserInfo").click(function () {
12                 //加载用户方法--展示添加用户数据表单
13                 bindAddClick();
14             });
15 
16         });
jq页面加载事件
 
技术分享
 1  function bindAddClick() {
 2 //显示添加用户
 3             $("#addUserDiv").css("display", "block");
 4 //设置对话框事件
 5             $(#addUserDiv).dialog({
 6                 width: 300,
 7                 height: 300,
 8                 title: "添加用户信息",
 9                 collapsible: true,
10                 maximizable: true,
11                 resizable: true,
12                 modal: true,
13                 buttons: [{
14                     text: Ok,
15                     iconCls: icon-ok,
16                     handler: function () {
17                         //获取用户在添加表单中输入的数据,然后同AJAX发送服务端。
18                         //完成用户添加方法
19                         addUser();
20                     }
21                 }, {
22                     text: Cancel,
23                     handler: function () {
24 //设置对话框关闭事件
25                         $(#addUserDiv).dialog(close);
26                     }
27                 }]
28             });
29         }
展示添加用户数据表单
技术分享
 1   function addUser() {
 2             //获取用户在添加表单中输入的数据
 3             //JQ封装的一个方法serializeArray() 每个表单元素输的数据返回json
 4             var pars = $("#addUserForm").serializeArray();//{"txtUserName":"zhangsan",}
 5             $.post("AddUserInfo.ashx", pars, function (data) {
 6                 if (data =http://www.mamicode.com/= "ok") {//用户点‘ok‘
 7                     //清除添加表单中输入的数据
 8                     $("#addUserForm input").val("");
 9                     //关闭添加窗口
10                     $(#addUserDiv).dialog(close);
11                     //删除表格旧数据
12                     $("#tabList tr:gt(0)").remove();
13                     //重新给表格添加数据
14                     loadUserInfo();
15                 } else {//服务器返回"no"
16                     $.messager.alert("提示","添加失败","error");
17                 }
18             });
19         }
完成用户添加
技术分享
 1  <!----------------添加用户按钮------------------->
 2  <a href="javascript:void(0)" id="addUserInfo">添加用户</a>
 3  <!----------------添加用户信息------------------->
 4 
 5     <div id="addUserDiv">
 6         <form id="addUserForm">
 7             <table>
 8                 <tr><td>用户名</td><td><input type="text" name="txtUserName"/></td></tr>
 9                   <tr><td>密码</td><td><input type="password"  name="txtUserPwd"/></td></tr>
10                   <tr><td>邮箱</td><td><input type="text" name="txtUserMail"/></td></tr>
11             </table>
12         </form>
13     </div>
html添加用户

技术分享
 1   function bindDeleteClick() {
 2 //设置删除按钮单击事件
 3             $(".deletes").click(function () {
 4 //获得删除按钮dld属性-用户id
 5                 var id = $(this).attr("dId");
 6                 $.messager.confirm("删除提示", "你确定要删除该记录吗?", function (r) {
 7                     if (r) {//如果该条件成立,表示用户单击了"确定"按钮
 8 //提交到服务器进行删除
 9                         $.post("DeleteUser.ashx", { "id": id }, function (data) {
10 //服务器返回Ok
11                             if (data =http://www.mamicode.com/= "ok") {
12                                 //清除表格中原有的数据
13                                 $("#tabList tr:gt(0)").remove();
14                                //将新数据加载到表格上。
15                                 loadUserInfo();
16                                 $.messager.show({
17                                     title: 提示,
18                                     msg: 删除成功,
19                                     showType: show
20                                 });
21 
22                             } else {
23                                 $.messager.alert("提示","删除失败!!","error");
24                             }
25 
26                         });
27                     }
28                 });
29             });
30         }
删除数据

技术分享
 1      function bindDetailClick() {
 2 //给详细按钮添加单击事件
 3             $(".details").click(function () {
 4 //获取nld属性-用户id
 5                 var id = $(this).attr("nId");
 6 //ajax提交id到服务器
 7                 $.post("ShowDetail.ashx", { "id": id }, function (data) {
 8                     var serverData =http://www.mamicode.com/ $.parseJSON(data);
 9                     //拿到的json依次赋给文本框
10                     $("#userName").text(serverData.UserName);
11                     $("#userPwd").text(serverData.UserPass);
12                     $("#userMail").text(serverData.Email);
13 //显示详细div
14                     $("#detailDiv").css("display", "block");
15 //设置detail对话框
16                     $(#detailDiv).dialog({
17                         width: 300,
18                         height: 300,
19                         title: "用户详细信息",
20                         collapsible: true,
21                         maximizable: true,
22                         resizable: true,
23                         modal:true,
24                         buttons:[{
25                             text:Ok,
26                             iconCls:icon-ok,
27                             handler:function(){
28                                 alert(ok);
29                             }
30                         },{
31                             text:Cancel,
32                             handler:function(){
33                                 $(#detailDiv).dialog(close);
34                             }
35                         }]
36                     });
37  
38                 });
39             });
40         }
展示详细信息
技术分享
 1     <!------------详细信息------------------>
 2     <div id="detailDiv">
 3         <table>
 4             <tr>
 5                 <td>用户名</td><td><span id="userName"></span></td>
 6             </tr>
 7              <tr>
 8                 <td>密码</td><td><span id="userPwd"></span></td>
 9             </tr>
10              <tr>
11                 <td>邮箱</td><td><span id="userMail"></span></td>
12             </tr>
13         </table>
14     </div>
html详细信息

技术分享
 1  function bindEditClick() {
 2             //先编辑按钮绑定事件
 3             $(".edits").click(function () {
 4 //设置获取eld属性-用户id
 5                 var id = $(this).attr("eId");
 6 //提交id到服务器
 7                 $.post("ShowDetail.ashx", { "id": id }, function (data) {
 8 //将服务器返回的字符串 通过jq方法处理成Json
 9                     var serverData =http://www.mamicode.com/ jQuery.parseJSON(data);
10                     //绑定数据到文本框
11                     $("#editUserId").val(serverData.Id);
12                     $("#eidUserName").val(serverData.UserName);
13                     $("#editUserPwd").val(serverData.UserPass);
14                     $("#editUserMail").val(serverData.Email);
15                     $("#editRegTime").val(ChangeDateFormat(serverData.RegTime));
16                     //显示Div
17                     $("#editUserDiv").css("display", "block");
18                     //弹出对话框
19                     $(#editUserDiv).dialog({
20                         width: 300,
21                         height: 300,
22                         title: "修改用户信息",
23                         collapsible: true,
24                         maximizable: true,
25                         resizable: true,
26                         modal: true,
27                         buttons: [{
28                             text: Ok,
29                             iconCls: icon-ok,
30                             handler: function () {
31                                 //完成数据更新
32                                 editUserInfo();
33                             }
34                         }, {
35                             text: Cancel,
36                             handler: function () {
37                                 $(#editUserDiv).dialog(close);
38                             }
39                         }]
40                     });
41                 });
42             });
43         }
展示要修改的数据
技术分享
 1    function editUserInfo() {
 2 //序列化表单元素(类似 .serialize() 方法),返回 JSON 数据结构数据。
 3             var pars = $("#editUserForm").serializeArray();
 4 //提交pars到服务器
 5             $.post("EditUserInfo.ashx", pars, function (data) {
 6                 if (data =http://www.mamicode.com/= "yes") {
 7                     //关闭添加窗口
 8                     $(#editUserDiv).dialog(close);
 9                     
10                     //删除表格旧数据
11                     $("#tabList tr:gt(0)").remove();
12                     //重新给表格添加数据
13                     loadUserInfo();
14                 } else {
15                     $.messager.alert("提示", "修改失败", "error");
16                 }
17             });
18         }
完成修改数据更新
技术分享
 1     <!-------------------编辑用户的数据--------------------->
 2         <div id="editUserDiv">
 3         <form id="editUserForm">
 4            <!--隐藏域-->
 5             <input type="hidden" name="txtEditUserId" id="editUserId" />
 6             <input type="hidden" name="txtEditRegTime" id="editRegTime" />
 7             <table>
 8                 <tr><td>用户名</td><td><input type="text" name="txtEditUserName" id="eidUserName"/></td></tr>
 9                   <tr><td>密码</td><td><input type="text"  name="txtEditUserPwd" id="editUserPwd"/></td></tr>
10                   <tr><td>邮箱</td><td><input type="text" name="txtEditUserMail" id="editUserMail"/></td></tr>
11             </table>
12         </form>
13     </div>
html编辑用户

技术分享
 1 //pageIndex当前页码   
 2 function loadUserInfo(pageIndex) {
 3             $.post("UserList.ashx", {"pageIndex":pageIndex}, function (data) {
 4                 var serverData =http://www.mamicode.com/ $.parseJSON(data);
 5                 var serverDataLength = serverData.UList.length;
 6                 for (var i = 0; i < serverDataLength; i++) {
 7                     $("<tr><td>" + serverData.UList[i].Id + "</td><td>" + serverData.UList[i].UserName + "</td><td>" + serverData.UList[i].UserPass + "</td><td>" + serverData.UList[i].Email + "</td><td>" + ChangeDateFormat(serverData.UList[i].RegTime) + "</td><td><a href=‘javascript:void(0)‘ class=‘deletes‘ dId=‘" + serverData.UList[i].Id + "‘>删除</a></td><td><a href=‘javascript:void(0)‘ class=‘details‘ nId=‘" + serverData.UList[i].Id + "‘>详细</a></td><td><a href=‘javascript:void(0)‘ class=‘edits‘ eId=‘" + serverData.UList[i].Id + "‘>编辑</a></td></tr>").appendTo("#tabList");
 8                 }
 9                 //将页码条加到DIV上。
10                 $("#pageBarDiv").html(serverData.MyPageBar);
11                 bindMyPageBarClick();//给数字页码加单击事件
12                 bindDetailClick();//注意:一定要表格中所有的数据加载完成了,才能给表格中的超链接加单击事件。
13                 bindDeleteClick();//删除
14                 bindEditClick();//编辑
15             });
16         }
加载用户数据
技术分享
 1   function bindMyPageBarClick() {
 2             $(".myPageBar").click(function () {
 3 //    //this指a标签 拿到href属性 按“=”分割 拿到页码
 4 
 5                 var pageIndex = $(this).attr(href).split(=)[1];
 6 //大于0行清空
 7                 $("#tabList tr:gt(0)").remove();
 8 //重新加载页面
 9 
10                 loadUserInfo(pageIndex);
11                 return false;//a标签默认事件,页面不发生跳转,执行后还是在页面的当前位置  不用在执行超链接。
12             });
13         }
数字页码加载单击事件
技术分享
1     <table id="tabList">
2      <tr><th>编号</th><th>用户名</th><th>密码</th><th>邮箱</th><th>时间</th><th>删除</th><th>详细</th><th>编辑</th></tr>
3 
4     </table>
5 <!--页码条-->
6     <div id="pageBarDiv" class="page_nav"></div>
html用户详细列表

AJAX增删查改------前台事件