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
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
相关文章推荐
- JQuery FlexiGrid的asp.net完美解决方案-dotNetFlexGrid使用指南(二)服务端查询、快速查询和Html模板
- 在ASP.NET Core中使用Apworks快速开发数据服务
- 使用DreamWeaverMX快速开发ASP.NET Web应用
- 【ASP.NET Core快速入门】(五)命令行配置、Json文件配置、Bind读取配置到C#实例、在Core Mvc中使用Options
- 在 ASP.NET 環境下使用 Memcached 快速上手指南
- 在 ASP.NET 環境下使用 Memcached 快速上手指南
- 使用DreamWeaverMX快速开发ASP.NET Web应用
- 在 ASP.NET 環境下使用 Memcached 快速上手指南
- NLog 在winform和asp.net下使用快速攻略
- NLog 在winform和asp.net下使用快速攻略 .
- 使用ASP.NET MVC+Entity Framework快速搭建博客系统——目录
- (转第二方案)在 ASP.NET 環境下使用 Memcached 快速上手指南
- 使用ASP.NET MVC+Entity Framework快速搭建博客系统
- 使用ASP.NET 构建 Web 应用程序快速入门-8小时的免费培训视频
- ASP.NET中使用开源组件NPOI快速导入导出Execl数据
- ASP.NET中使用开源组件NPOI快速导入导出Execl数据
- 使用Asp.net WebAPI 快速构建后台数据接口
- 使用ASP.NET 构建 Web 应用程序快速入门-8小时的免费培训视频 - Scott Hanselman的中文博客【转载】
- 快速使用 SQLite 开源数据库 一个Asp.Net 的小例子
- IdentityServer4 中文文档 -14- (快速入门)使用 ASP.NET Core Identity