• 技术文章 >后端开发 >C#.Net教程

    asp.net ajax 简单实例

    高洛峰高洛峰2016-12-16 16:28:16原创598

    实例需求:

    利用Ajax技术实现一个页面不刷新的,并且验证一个用户名是否被注册过的过程。

    要求:

    在页面中添加一个文本框标签用于输入用户名,添加一个按钮用于提交用户数据。验证的结果被直接打印在页面上。

    操作步骤如下:

    1) 打开Visual Studio 2005建立一个网站

    2) 在VS2005工具箱的HTML栏中添加一个 控件及 控件。

    3) 在<Head></Head>中加入<script type ="text/javascript"></script>标签,以便进行Ajax引擎的编写,并在基本定义一个XMLHttpRequest对象,但是并不进行初始化操作。如下代码所示。

    var xmlhttp;

    function Validation()

    {

    //实例化XMLHttpRequest对象

    xmlhttp =new ActiveXObject ("Microsoft.XMLHTTP");

    //找到名为“Text1”的文本框

    var name=document .getElementById ("Text1");

    //利用Open方法向指定URL

    //查询字符串“name”将文本框中的数据传送到目标页面

    xmlhttp.open("Post","AjaxDemo_1.aspx?name="+name.value);

    //设置当服务器响应返回时用于处理响应的函数名

    xmlhttp .onreadystatechange=OnMessageBack;

    //送发请求

    xmlhttp .send(null);

    }

    4) 添加OnMessageBack()函数的内容。代码如下:

    function OnMessageBack()

    {

    //判断请求状态及HTTP状态是否都能满足条件

    if (xmlhttp .readystate==4&&xmlhttp .status==200)

    {

    //将返回的文本打印到页面上

    document .write (xmlhttp .responsetext);

    }

    }

    5) 下面为Button1添加事件代码,将其标签修改为

    <input id="Button1" type="button" value="button" onclick="Validation()" />

    6) 页面中的Ajax引擎已经编写完毕。在上代码中,大家可以看到该用户名是通过一个名为“name”的查询字符串进行传递的,该查询字符串传递到服务器后需要进行后台处理,因此,要对“AjaxDemo_1.aspx.cs”中的Page_Load方法添加一些ADO.NET代码。这里的数据库使用的是“Northwind”示例数据库。代码如下所示。

    protected void Page_Load(object sender, EventArgs e)

    {

    string name = Request.QueryString["name"];

    if (name != null)

    {

    SqlConnection con = new SqlConnection("");

    SqlCommand com = new SqlCommand();

    com.CommandText = "";

    com.Parameters.Add("@CustomerID",SqlDbType.NChar,5).Value =name;

    con.Open();

    int count = (int)com.ExecuteScalar();

    con.Close();

    if (count == 0)

    {

    Response.Write("<script>alert('该用户可以用!');</script>");

    }

    else

    {

    Response.Write("<script>alert('该用户已经被占用,请使用其他用户名!');</script>");

    }

    }

    }

    这里要注意,当服务器利用Response.Write()方法向客户端发出响应后,客户端的Ajax引擎就截获该响应流,并在我们事先定义的“OnMessageBack()”方法中进行处理。


    更多asp.net ajax 简单实例 相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:asp.net ajax
    上一篇:jquery.Ajax()方法调用Asp.Net后台的方法解析 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • go是c语言中关键字吗• 指针数组和数组指针的区别是什么• 汇编语言和c语言的区别是什么• putchar()的功能是啥• c语言文件读写怎么操作
    1/1

    PHP中文网