本篇文章给大家分享的是有关Ajax中怎么修改数据,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
创新互联公司专注于企业成都全网营销、网站重做改版、淮南网站定制设计、自适应品牌网站建设、H5技术、商城网站建设、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为淮南等各大城市提供网站开发制作服务。
代码如下:
同时在线测试的人很多,有时可能会出现并发修改现象.
数据编号 | 数据内容 |
输入编号:
修改内容:
我们来分析上面的ajax前端的代码.代码中一共有三个函数.分别为:ajax_xmlhttp(),Read(),Edit_Data().我们依次来讲解他们的作用.
1、alax_xmlhttp():用来创建一个可用得XMLHTTPRequest对象,如果你还不知道什么是XMLHTTPRequest,请参考:XMLHTTPRequest对象详解
2、Read():读取数据函数,用来读取服务端数据库中已存在的数据.该函数与前几篇的读取数据函数基本上差不多.我不再重复讲解相同之处.如不明白.请参阅前几篇ajax系列教程!只是在返回xml数据以后的解析中略有不同.先看下服务端读取数据的格式: Edit_Data.Asp?action=read. 在服务端输出的xml数据中有5个list标签.这代表数据库中有5条数据.而每个list的标签下面包含着id和content两个子元素.这正是数据库中的每条数据的内容. id字段和content字段.明白了这些.我们来讲Read函数的是如何解析这些返回的xml数据的.从list=xmlData.getElementsBytagName("list")的开始讲起,首先使用if来判断这些list标签是否被成功获取,如果是,则获取我们显示数据的表格.然后使用for遍历 这些list.每循环一个list的就为我们要显示数据的表格增加一行,因为每个list的内含着一条数据内容.而我们的表格每一行要显示一条数据.那么每一行创建完以后.我们再使用一个for来遍历当前list的子元素.每遍历一个子元素便为该行增加一列.然后再 为该列写入当前list中的第k个子元素的文本内容.第一列对应id里的内容,第二列对应content里的内容.如果你还不明白我再讲什么.请恶补一下javascript的for循环!和涉及到的Dom相关指令.本站提供的Dom手册有每个指令的详细解释!
3、Edit_Data():该函数用来提交你输入的数据编号和要修改的数据内容.只要数据被成功提交以后.无论发生什么事情.服务端都会返回一个msg标签.Edit_Data函数接收返回的msg标签.根据msg标签的内容来判断数据修改的情况.跟上一篇的"ajax添加数据"教程中的 Add_Data函数也基本相同.如有不明白之处.请参考上篇的ajax添加数据教程.我重点讲一下Edit_Data函数中是如何将修改后的内容即时显示到表格的!从msg=xmlData.getElementsByTagName("msg")开始讲起.首先if判断msg是否存在.如果已取得msg标签.便根据msg标签中的内容来判断服务端的修改结果. msg内容为0代表数据被成功修改,这时我们在前端显示数据的表格内找到你输入编号的那一行.然后把你输入的修改数据写入到该行的第二列中去.此时我们并没有重复读取数据库中的数据!如有疑惑之处请参照上一篇的教程.
下面是服务端的Edit_Data.Asp文件的源码:
复制代码 代码如下:
<%
'出自:http://Www.Web666.Net
'作者:康董
'如需转载请务必保留以上信息
'定义一个变量,来保存xml数据
xml="
action=Request.QueryString("action") '使用get方式接受一个action来判断客户端想要执行什么操作
Select case action
case "read" '如果为read则执行读取数据的操作
Call Read
case "edit" '如果为edit则执行修改数据操作
Call Edit_Data
case else
xml = xml&"
End Select
xml=xml&""
Response.Clear
Response.ContentType="text/xml"
Response.CharSet="gb2312"
Response.write xml
Response.End
Sub Read '定义一个读取数据的过程
Call OpenConn '打开数据库链接
Sql = "Select * From edit_table" '打开数据库中名字为web_table的表
Set Rs = Conn.Execute(Sql) '执行Sql语句,并将sql的索引赋值给rs变量
While Not Rs.Eof '如果表中有数据.则一直循环读取
xml = xml&"
- " '每读取一条数据则创建一个list标签
xml = xml&"
xml = xml&"
xml = xml&"
Rs.MoveNext '执行下一条数据的读取
Wend '如果数据库中没有了数据.则结束循环
Close_Conn '关闭数据库链接
End Sub
Sub Edit_Data
On Error Resume Next '忽略错误
OpenConn '打开数据库链接
id = Trim(Request.Form("id")) '接收客户端传过来的id数据编号
Sql = "Select * From edit_table Where id="&id
Set Rs=Conn.Execute(Sql)
If Rs.Eof then
xml = xml&"
Exit Sub
End If
content = Trim(Request.Form("content")) '接收修改后的内容
If id = "" Or content = "" Then '如果id或content有一项为空,返回3
xml = xml&"
Exit Sub '退出过程
End If
Sql = "Update edit_table Set content='"&content&"' Where id="&id
Conn.Execute(Sql) '执行修改数据的sql语句
If Err.Number = 0 Then '如果没有错误发生
xml = xml&"
Exit Sub '退出过程
Else '如果有错误发生
xml = xml&"
Exit Sub '退出过程
End If
End Sub
%>
以上就是Ajax中怎么修改数据,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
当前标题:Ajax中怎么修改数据
网址分享:http://lswzjz.com/article/gocdjd.html