初探AJAX.NET
当看到AJAX势头红火时,这个集JavaScript、XML和ASP.NET三种主流WEB技术三合一框架应用的新技术着实让人惊羡不已。以前要实现同样页面无刷新而达到数据互动也有很多方法,但都过于繁琐,且开发人员必须熟练掌握N种不同的语言或技术。例如我可以用iframe+JavaScript实现假无刷新,虽然表面看起来是没有刷新页面,但有音响的时候总能听到“达”的一声:) 现在看看AJAX来实现真正的无刷新吧。
我们先要下载Ajax.NET类库文件Ajax.dll并将其放入解决方案根目录下的References目录下。
以下是index.aspx.cs中的部分源码:
public class index : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
Ajax.Utility.RegisterTypeForAjax(typeof(index));
if (!Page.IsPostBack)
{
this.Label1.Text="Server Control";
}
}
[Ajax.AjaxMethod()]
public string ShowText()
{
return "this is a ajax page.";
}
}
接着要在index.aspx文件中写一些javascript代码,并将按钮的Click事件指定为ShowText():
<script language="javascript">
function ShowText()
{
//与Server端同名方法的客户端函数;
//执行服务器端方法;
index.ShowText(ShowText_CallBack);
}
function ShowText_CallBack(response)
{
//服务端的回调函数;
//在此可以设置客户端的显示方式、UI、Data等;
var msg=document.getElementById("msg");
msg.innerHTML=response.value;
}
</script>