c#.net下简单的Ajax例子——Ajax.dll
2009-05-05 09:05
447 查看
c#.net下简单的Ajax例子——Ajax.dll http://www.diybl.com/ 2008-3-12 网络 点击:1741 [ 评论 ]
-
-
文章搜索: 【点击打包该文章】
【本站开通在线QQ讨论群】
小研究了一下如何用Ajax.dll实现上一个例子,很沮丧,因为使用人家的方法,更简单,代码更少,而且仅仅是它的皮毛而已。所以,如果做项目要用到Ajax,建议研究一下框架,比如说Ext。它的类库和文档相当丰富,简单易上手。
好吧,我把实现过程列出来。首先我们需要一个Ajax.dll文件,这个自己去找吧!放到项目中,并添加好引用。首先,你需要一个类,随意命名为“AjaxMethod.cs”代码如下:
namespace Test.AjaxTest
{
/// <summary>
/// AjaxMethod 的摘要说明。
/// </summary>
public class AjaxMethod
{
public AjaxMethod() {}
// 数据库查询操作
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]
public DataSet GetList(string id)
{
string sql = "select CityName,CityCode from City where [ID]=" + id;
return SelectData(sql); // 调用下面的方法
}
//
private DataSet SelectData(string sql)
{
// 数据库链接定义:
//Web.config中<configuration><appSettings></appSettings></configuration>
// 中添加定义:<add key="ConnectionString" value="data source=localhost;
// initial catalog=helpdesk1; user id=sa; password=sa; "></add>
string cs = System.Configuration.ConfigurationSettings
.AppSettings["ConnectionString"];
// 或者直接这样定义
//string cs = "Server=(local);UID=sa;PWD=sa;Database=HelpDesk1";
SqlDataAdapter sda = new SqlDataAdapter(sql,cs);
DataSet ds = new DataSet();
sda.Fill(ds);
return ds;
}
}
}
文章出处:http://www.diybl.com/course/4_webprogram/asp.net/asp_netshl/2007125/90636.html
接下来是你要实现效果的页面a.aspx,<body>部分很简单:
<body>
<form id="Form1" method="post" runat="server">
<select id="AList" onchange="GetBList()">
<option value="0">A</option>
<option value="1">B</option>
<option value="2">C</option>
</select>
<select id="BList"></select>
</form>
</body> 当页面触发onchange事件,便进入了GetBList()方法,下面是该页面完整的js:
<script language="javascript">
function GetBList() {
// 调用数据库操作方法
var av = document.getElementById("AList").value;
// 调用AjaxMethod类的方法,至于这里有两个参数,猜想是一个委托,
// 将GetList执行结果DataSet传递给SetBList方法,隐藏了
AjaxMethod.GetList(av, SetBList);
}
function SetBList(response) {
if(response != null) {
var ds = response.value; // 返回集
// 这里很有特色,开始我感觉出错了,怎么js的语法规则跟c#一样啊
// 可见Ajax.dll里面的正则应该写的暴强!不过有一点让人感觉不爽
// 我在测试时,将ds.Tables[0].Rows.lenght写成了ds.Tables[0].Rows.Count
// js会找不到对象的错误。
// 如此等于,我们还是要习惯它的规则,毕竟不完全是c#,它只是定义了一种跟c#
// 非常接近的语法规则而已
if(ds != null && typeof(ds) == "object" && ds.Tables != null) {
alert(ds.Tables[0].Rows.length);
for(var i=0;i<ds.Tables[0].Rows.length;i++) {
var option = document.createElement("OPTION");
option.value = ds.Tables[0].Rows[i].CityCode;
option.text = ds.Tables[0].Rows[i].CityName;
document.Form1.BList.options.add(option);
}
}
}
}
</script> 如此例子便结束了,很多繁复的操作都封装了。我们学到的只是如何用,仅此而已,不过在我们赶项目的时候,确实能带来很多的方便。
文章出处:http://www.diybl.com/course/4_webprogram/asp.net/asp_netshl/2007125/90636_2.html
-
-
文章搜索: 【点击打包该文章】
【本站开通在线QQ讨论群】
小研究了一下如何用Ajax.dll实现上一个例子,很沮丧,因为使用人家的方法,更简单,代码更少,而且仅仅是它的皮毛而已。所以,如果做项目要用到Ajax,建议研究一下框架,比如说Ext。它的类库和文档相当丰富,简单易上手。
好吧,我把实现过程列出来。首先我们需要一个Ajax.dll文件,这个自己去找吧!放到项目中,并添加好引用。首先,你需要一个类,随意命名为“AjaxMethod.cs”代码如下:
namespace Test.AjaxTest
{
/// <summary>
/// AjaxMethod 的摘要说明。
/// </summary>
public class AjaxMethod
{
public AjaxMethod() {}
// 数据库查询操作
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]
public DataSet GetList(string id)
{
string sql = "select CityName,CityCode from City where [ID]=" + id;
return SelectData(sql); // 调用下面的方法
}
//
private DataSet SelectData(string sql)
{
// 数据库链接定义:
//Web.config中<configuration><appSettings></appSettings></configuration>
// 中添加定义:<add key="ConnectionString" value="data source=localhost;
// initial catalog=helpdesk1; user id=sa; password=sa; "></add>
string cs = System.Configuration.ConfigurationSettings
.AppSettings["ConnectionString"];
// 或者直接这样定义
//string cs = "Server=(local);UID=sa;PWD=sa;Database=HelpDesk1";
SqlDataAdapter sda = new SqlDataAdapter(sql,cs);
DataSet ds = new DataSet();
sda.Fill(ds);
return ds;
}
}
}
文章出处:http://www.diybl.com/course/4_webprogram/asp.net/asp_netshl/2007125/90636.html
接下来是你要实现效果的页面a.aspx,<body>部分很简单:
<body>
<form id="Form1" method="post" runat="server">
<select id="AList" onchange="GetBList()">
<option value="0">A</option>
<option value="1">B</option>
<option value="2">C</option>
</select>
<select id="BList"></select>
</form>
</body> 当页面触发onchange事件,便进入了GetBList()方法,下面是该页面完整的js:
<script language="javascript">
function GetBList() {
// 调用数据库操作方法
var av = document.getElementById("AList").value;
// 调用AjaxMethod类的方法,至于这里有两个参数,猜想是一个委托,
// 将GetList执行结果DataSet传递给SetBList方法,隐藏了
AjaxMethod.GetList(av, SetBList);
}
function SetBList(response) {
if(response != null) {
var ds = response.value; // 返回集
// 这里很有特色,开始我感觉出错了,怎么js的语法规则跟c#一样啊
// 可见Ajax.dll里面的正则应该写的暴强!不过有一点让人感觉不爽
// 我在测试时,将ds.Tables[0].Rows.lenght写成了ds.Tables[0].Rows.Count
// js会找不到对象的错误。
// 如此等于,我们还是要习惯它的规则,毕竟不完全是c#,它只是定义了一种跟c#
// 非常接近的语法规则而已
if(ds != null && typeof(ds) == "object" && ds.Tables != null) {
alert(ds.Tables[0].Rows.length);
for(var i=0;i<ds.Tables[0].Rows.length;i++) {
var option = document.createElement("OPTION");
option.value = ds.Tables[0].Rows[i].CityCode;
option.text = ds.Tables[0].Rows[i].CityName;
document.Form1.BList.options.add(option);
}
}
}
}
</script> 如此例子便结束了,很多繁复的操作都封装了。我们学到的只是如何用,仅此而已,不过在我们赶项目的时候,确实能带来很多的方便。
文章出处:http://www.diybl.com/course/4_webprogram/asp.net/asp_netshl/2007125/90636_2.html
相关文章推荐
- c#.net下简单的Ajax例子——Ajax.dll
- c#.net下简单的Ajax例子——Ajax.dll
- c#下简单的Ajax例子——Ajax.dll
- .net c# Ajax下来菜单简单例子
- c#.net下简单的Ajax例子
- 【转】c#.net下简单的Ajax例子
- c#.net下简单的Ajax例子
- c# AJAX.NET 的简单例子
- c#下简单的Ajax例子——Ajax.dll
- MagicAjax.Net的使用要点和简单例子
- C#.NET中GridView单行编辑的简单例子
- asp.net通过反射技术实现Ajax(3)--第一个简单的例子
- ASP.NET中AjaxPro.dll的简单应用
- 收了100元辛苦费,写了一个最简单的C#ASP.NET的3层架构例子代码,源码是通过代码生成器生成的【写程序的效率神奇的高】
- .NET C# 创建WebService服务简单的例子
- ASP.NET中AjaxTextBox.dll的简单应用
- C# .net Remoting最简单的例子
- C# Asp.Net Ajax简单聊天室源码和设计文档
- .NET C# 创建WebService服务简单的例子
- Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作