Ajax联动下拉框的实现例子

2016-02-19 22:26 6 1 收藏

图老师设计创意栏目是一个分享最好最实用的教程的社区,我们拥有最用心的各种教程,今天就给大家分享Ajax联动下拉框的实现例子的教程,热爱PS的朋友们快点看过来吧!

【 tulaoshi.com - Web开发 】

  这是采用ajax技术,刷新是肯定的,是在我们察觉不到的速度完成.XMLHTTP牺牲页面的方法,我们之所以看不见刷新,是因为所有的工作都是在牺牲页面上进行的,里面"翻江倒海"的"折腾",我们看不见,效率上差些!

  AjaxPro.dll 下载地址  http://ajaxpro.schwarz-interactive.de/download/ajaxpro.zip

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  Web.Config
  ?xml version="1.0"?
  configuration
   system.web
        httpHandlers
     add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" /
     add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/
    /httpHandlers
   /system.web
  /configuration

  AjaxTest.aspx

  %@ Page Language="C#" AutoEventWireup="true" CodeFile="AjaxTest.aspx.cs" Inherits="AjaxTest" %

  !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无标题页/title

  /head

  body
  script language="javascript" type="text/javascript"
  function areaResult()
  {
  var area=document.getElementById("DropDownList1");
  //alert(area.value);
  AjaxTest.GetCityList(area.value,get_city_Result_CallBack);
  }
  function get_city_Result_CallBack(response)
  {
  if (response.value != null)
  {
    document.all("DropDownList2").length=0;  
    var ds = response.value;
    if(ds != null && typeof(ds) == "object" && ds.Tables != null)
    {
     for(var i=0; ids.Tables[0].Rows.length; i++)
    {
   var name=ds.Tables[0].Rows[i].name;
   var id=ds.Tables[0].Rows[i].id;
   document.all("DropDownList2").options.add(new Option(name,id));
    }
    //document.all("TextBox1").value="";  
   }
  }
  return
  }

  /script
    form id="form1" runat="server"
          
   asp:DropDownList ID="DropDownList1" runat="server"
          /asp:DropDownList
          asp:DropDownList ID="DropDownList2" runat="server"
          /asp:DropDownList 
        br /
      /form
  /body
  /html

  AjaxTest.cs

  using System;
  using System.Data;
  using System.Configuration;
  using System.Collections;
  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 MeetWeb;
  public partial class AjaxTest : System.Web.UI.Page
  {
      protected void Page_Load(object sender, EventArgs e)
      {
         AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxTest));
         if (!Page.IsPostBack)
         {
             BindData();

         }
      }
      private void BindData()
      {
          DataSet ds = new DataSet();
            String sql = "Select id,name from test";
            try
            {
                ds = GetDataSet(sql, "test");
                this.DropDownList1.DataSource = ds.Tables[0];
                this.DropDownList1.DataTextField = "name";
                this.DropDownList1.DataValueField = "id";
                this.DropDownList1.DataBind();
                this.DropDownList1.Attributes.Add("onclick", "areaResult();");
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
      }

      public static DataSet GetDataSet(string sql,string aa)
      {
          MeetWeb.SqlDataBase a = new MeetWeb.SqlDataBase("server=localhostPMSERVER;uid=sa;pwd=sa;database=test");
          DataSet ds = new DataSet();
          ds=a.CreateSet(sql, aa);
          return ds;
      }

      [AjaxPro.AjaxMethod]
      public DataSet GetCityList(int id)
      {
          string sql = "select name from test where id='" + id + "'";
          return GetDataSet(sql,"test");
      }

  
  }

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

来源:http://www.tulaoshi.com/n/20160219/1628332.html

延伸阅读
标签: Web开发
开发环境 VS.NET 2005    C#    Oracle   AjaxPro   最近忙没时间详细解释,先把通用的源码贴出自己看。 出于对性能的考虑,把省市两级写成JS数组,把县区(镇)两级写在 Oracle 里。通过 JS 触发 C# 去读取数据库,然后将数据回传给 JS ,再绑定显示。 操作 select 采...
标签: Web开发
服务器弱智,请自行将代码中包含全角select的部分替换为半角字符。  程序代码 script type="text/javascript" var childCreate=false; function Offset(e) //取标签的绝对位置 { var t = e.offsetTop; var l = e.offsetLeft; var w = e.offsetWidth; var h = e.offsetHeight-2; while(e=e.offsetParent) {   t+=e.offsetTop;...
标签: Web开发
  最近终于有时间研究研究AJAX了.看了一些AJAX的介绍. 用ProtoType框架完成的一个下拉框(asp:DropDownList)联动的AJAX的小例子,和初学者分享一下. 代码下载 script language="javascript" type="text/javascript"  !-- function goCity() {        ...
标签: ASP
 <html <head <title模拟OICQ下拉头像<meta http-equiv="Content-Type" content="text/html; charset=gb2312" <script//writed by 钟钟 2001/2/27 var bV=parseInt(navigator.appVersion); var IE4=((document.all)&&(bV=4))?true:false; var NS4=(document.layers)?true:false; var z=0; fu...
标签: Web开发
在一个jsp页面实现二级下拉框联动,实时读取数据库数据,这个方法非常使用,只需要修改很小的地方就可以使用。设计的文件,serch.jsp,main.js,bytetostr.js, 先讲一下main.js,这是javascript,其中注意修改jsp页面名称。    function findObject(fName,initValue)...{    var xmlhttp = new Ac...

经验教程

202

收藏

74
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部