您的位置:首页 > 编程语言 > ASP

ASP.net快速使用AJAX教程

2008-07-30 15:24 246 查看
本教程实现的功能是一个dropdownlist1 值改变另一个dropdownlist2的内容随着dropdownlist1 改变而改变,这个改变的数据是从数据库调出来的。

1、首先下载AJAX类库Ajax.dll

2、引用Ajax.all类库

3、在Web.config里配置Ajax

在<system.web></system.web>里加上这样一句话:

<httpHandlers>

<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory,Ajax"/>

</httpHandlers>

3、在页面Page_Load()时间里注册要使用ajax页面,如:

private void Page_Load(object sender, System.EventArgs e)

{

Ajax.Utility.RegisterTypeForAjax(typeof(WebForm2));//WebForm2是这个页面的类名

}

4、写在html页面里写javascript代码,如:

<script language="javascript">

function sWinNoResult() //这一个方法是html控件调用的,如:onchange="sWinNoResult();"

{

var swinno =document.getElementById("ddl_sWinNo");

WebForm2.GetDataSet(swinno.value,get_city_Result_CallBack);

//GetDataSet这个方法就是WebForm2.aspx.cs里的方法,如下:

[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]这一句是必须的。

Code

[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]

public DataSet GetDataSet(string sWinNo)

{

string strsql1 = "select AUTHORNO,AUTHORNAME from TBL_SYS_AUTHORKIND where AUTHORNO="+sWinNo;

DataSet ds = new DataSet();

myData.ExecuteDataset(CommandType.Text,strsql1,null,ds,"EG_BAS_SERVERITEM");

return ds;

}
//get_city_Result_CallBack这个就是返回数据后要调用的javascript的方法,如下:

}

function get_city_Result_CallBack(response)//response就是后台返回的值

{

if (response.value != null)

{

document.all("ddl_sItemNo").length=0;    

     var ds = response.value;

var strtext="";

if(ds != null && typeof(ds) == "object" && ds.Tables != null)

{

document.all("ddl_sItemNo").options.add(new Option("==请选择==",""));

for(var i=0; i<ds.Tables[0].Rows.length; i++)

     {

     var name=ds.Tables[0].Rows[i].AUTHORNAME;

       var id=ds.Tables[0].Rows[i].AUTHORNO;

       document.all("ddl_sItemNo").options.add(new Option(name,id));  

      }

}

}

return

}

</script>

5、参考以上代码,自己慢慢练吧。
function sWinNoResult()
{
var swinno =document.getElementById("ddl_sWinNo");
WebForm2.GetDataSet(swinno.value,get_city_Result_CallBack);
}
function get_city_Result_CallBack(response)
{
if (response.value != null)
{

document.all("ddl_sItemNo").length=0;    
     var ds = response.value;
var strtext="";
if(ds != null && typeof(ds) == "object" && ds.Tables != null)
{
document.all("ddl_sItemNo").options.add(new Option("==请选择==",""));
for(var i=0; i
function sWinNoResult()
{
var swinno =document.getElementById("ddl_sWinNo");
WebForm2.GetDataSet(swinno.value,get_city_Result_CallBack);
}
function get_city_Result_CallBack(response)
{
if (response.value != null)
{

document.all("ddl_sItemNo").length=0;    
     var ds = response.value;
var strtext="";
if(ds != null && typeof(ds) == "object" && ds.Tables != null)
{
document.all("ddl_sItemNo").options.add(new Option("==请选择==",""));
for(var i=0; i
function sWinNoResult()
{
var swinno =document.getElementById("ddl_sWinNo");
WebForm2.GetDataSet(swinno.value,get_city_Result_CallBack);
}
function get_city_Result_CallBack(response)
{
if (response.value != null)
{

document.all("ddl_sItemNo").length=0;    
     var ds = response.value;
var strtext="";
if(ds != null && typeof(ds) == "object" && ds.Tables != null)
{
document.all("ddl_sItemNo").options.add(new Option("==请选择==",""));
for(var i=0; i
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: