ASP.NET中使用MagicAjax.dll

MagicAjax.dll在ASP.NET的项目中时常使用,理论上的东西就不多说了,下面演示一个比较简单的实例,来看看效果

下面给出详细的代码,有兴趣的朋友可以试试看

1.在项目中添加MagicAjax.dll的相关引用

2.Web.Config文件配置

<configuration>
<!-- 使用MagicAjax.dll配置1 -->
<configSections>
<section name="magicAjax" type="MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax"/>
</configSections>
<appSettings/>
<connectionStrings/>
<system.web>
<!-- 使用MagicAjax.dll配置2 -->
<httpModules>
<add name="MagicAjaxModule" type="MagicAjax.MagicAjaxModule, MagicAjax"/>
</httpModules>
</system.web>
</configuration>

3.Default.aspx文件代码

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register TagPrefix="ajax" Namespace="MagicAjax.UI.Controls" Assembly="MagicAjax" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>

<ajax:AjaxPanel ID="ajaxPan1" runat="server">
<asp:DropDownList ID="ddlTest1" runat="server" Width="200" AutoPostBack="true" OnSelectedIndexChanged="ddlTest1_SelectedIndexChanged"></asp:DropDownList>
&nbsp;&nbsp;&nbsp;
<asp:DropDownList ID="ddlTest2" runat="server" Width="200"></asp:DropDownList>
<br /><br />
<asp:Button ID="btnTest1" runat="server" Text="按钮在AjaxPanel中" OnClick="btnTest1_Click" />
</ajax:AjaxPanel>

<br /><br />
<asp:Button ID="btnTest2" runat="server" Text="按钮在AjaxPanel外" OnClick="btnTest2_Click" />

<br /><br />
<asp:Button ID="btnTest" runat="server" Text="TEST" />
<asp:TextBox ID="txtTest" runat="server"></asp:TextBox>

</div>
</form>
</body>
</html>

4.Default.aspx.cs文件代码

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MagicAjax;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindList1();
}
}

private void BindList1()
{
ddlTest1.Items.Add(
new ListItem("-- Select --", ""));
ddlTest1.Items.Add(
new ListItem("上海", "SH"));
ddlTest1.Items.Add(
new ListItem("北京", "BJ"));
ddlTest1.Items.Add(
new ListItem("重庆", "CQ"));
}

private void BindList2(string argValue)
{
ddlTest2.Items.Clear();

switch (argValue)
{
case "SH":
System.Threading.Thread.Sleep(
2000);
ddlTest2.Items.Add(
new ListItem("上海-1", "SH1"));
ddlTest2.Items.Add(
new ListItem("上海-2", "SH2"));
ddlTest2.Items.Add(
new ListItem("上海-3", "SH3"));
ddlTest2.Items.Add(
new ListItem("上海-4", "SH4"));
break;
case "BJ":
ddlTest2.Items.Add(
new ListItem("北京-1", "BJ1"));
ddlTest2.Items.Add(
new ListItem("北京-2", "BJ2"));
ddlTest2.Items.Add(
new ListItem("北京-3", "BJ3"));
break;
case "CQ":
ddlTest2.Items.Add(
new ListItem("重庆-1", "CQ1"));
ddlTest2.Items.Add(
new ListItem("重庆-2", "CQ2"));
ddlTest2.Items.Add(
new ListItem("重庆-3", "CQ3"));
break;
default:
ddlTest2.Items.Add(
new ListItem("-- Select --", ""));
break;
}

}

protected void ddlTest1_SelectedIndexChanged(object sender, EventArgs e)
{
BindList2(ddlTest1.SelectedValue);
}

protected void btnTest1_Click(object sender, EventArgs e)
{
MagicAjax.AjaxCallHelper.Write(
"alert('按钮在AjaxPanel中的效果');");
txtTest.Text
= ddlTest2.SelectedValue;
btnTest.Attributes[
"onclick"] = "avascript:return confirm('按钮在AjaxPanel中给按钮添加JS');";
}

protected void btnTest2_Click(object sender, EventArgs e)
{
//这样是错误的:MagicAjax.AjaxCallHelper.Write("alert('按钮在AjaxPanel外的效果');");
Response.Write("<script>alert('按钮在AjaxPanel外的效果');</script>");
txtTest.Text
= ddlTest2.SelectedValue;
btnTest.Attributes[
"onclick"] = "avascript:return confirm('按钮在AjaxPanel外给按钮添加JS');";
}

}
posted @ 2011-08-21 00:59  DannyLi  阅读(606)  评论(0编辑  收藏  举报