javascript dropdownlist 无刷新联动

   < script language = " javascript " >
   
function  load(state)
   {
    
var  drp2  =  document.getElementById( " DropDownList2 " );
    
for ( var  i = 0 ;i <= drp2.options.length - 1 ;i ++ )
    {
     drp2.remove(i);
    }
    
var  oHttpReq  =   new  ActiveXObject( " MSXML2.XMLHTTP " );     // 发送请求
     var  oDoc  =   new  ActiveXObject( " MSXML2.DOMDocument " );     // 响应结果
     var  state = document.getElementById( " DropDownList1 " ).value;
    oHttpReq.open(
" post " , " webform2.aspx?state= " + state,  false );
    oHttpReq.send(
"" );
    result 
=  oHttpReq.responseText;
    oDoc.loadXML(result); 
    
   
//  items = oDoc.selectNodes("//CITY/Table");
       items  =  oDoc.selectNodes( " //address/Table " );
     
for  ( var  item  =  items.nextNode();item;item  =  items.nextNode())
     { 
      
var  city  =  item.selectSingleNode( " //address " ).nodeTypedValue;
      
var  newOption  =  document.createElement( " OPTION " ); 
      newOption.text 
=  city; 
      newOption.value 
=  city; 
      drp2.options.add(newOption); 
      } 
   }
  
</ script >



============================

webform1.aspx

private 
void  Page_Load(object sender, System.EventArgs e)
  {
   
//  在此处放置用户代码以初始化页面
    if ( ! IsPostBack)
   {
    SqlConnection con 
=   new  SqlConnection( " packet size=4096;user id=sa;data source=SERVER;persist security info=False;initial catalog=pubs " );
    SqlDataAdapter da 
=   new  SqlDataAdapter( " select state from authors group by state " ,con);
    DataSet ds 
=   new  DataSet( " State " );
    da.Fill(ds);
    
this .DropDownList1.DataSource  =  ds.Tables[ 0 ];
    
this .DropDownList1.DataTextField  =   " state " ;
    
this .DropDownList1.DataValueField  =   " state " ; 
    
this .DropDownList1.DataBind();  
    
this .DropDownList1.Attributes.Add( " onchange " , " load() " );  
    
// DropDownList1.
   }
  
  }


webform2.aspx

 private 
void  Page_Load(object sender, System.EventArgs e)
  {
   
//  在此处放置用户代码以初始化页面
    if ( this .Request[ " state " ] != null )
   {  
    string state 
=   this .Request[ " state " ].ToString();  
    SqlConnection con 
=   new  SqlConnection( " packet size=4096;user id=sa;data source=SERVER;persist security info=False;initial catalog=pubs " );
    SqlDataAdapter da 
=   new  SqlDataAdapter( " select address from authors where state = ' " + state + " ' " ,con);  
    DataSet ds 
=   new  DataSet( " address " );  
    da.Fill(ds);  
    XmlTextWriter writer 
=   new  XmlTextWriter(Response.OutputStream, Response.ContentEncoding);  
    writer.Formatting 
=  Formatting.Indented;  
    writer.Indentation 
=   4 ;  
    writer.IndentChar 
=  ' ';  
    ds.WriteXml(writer);  
    writer.Flush();  
    Response.End();  
    writer.Close();  
   }
  }

你可能感兴趣的:(JavaScript)