Ini menggunakan teknologi ajax, penyegarannya pasti, dan selesai dengan kecepatan yang tidak kita sadari. Metode halaman pengorbanan XMLHTTP, alasan mengapa kita tidak dapat melihat penyegaran adalah karena semua pekerjaan dilakukan di halaman pengorbanan , di dalam " Kita tidak dapat melihat "pelemparan" dunia, dan efisiensinya lebih buruk!
AjaxTest.aspx
<%@ Halaman Language="C#" AutoEventWireup="true" CodeFile="AjaxTest.aspx.cs" Inherits="AjaxTest" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transisi//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml " >
<head runat="server">
<title>Halaman tanpa judul</title>
</head>
<body>
<skrip bahasa="javascript" type="teks/javascript">
area fungsiHasil()
{
var area=document.getElementById("DropDownList1");
//alert(area.nilai);
AjaxTest.GetCityList(area.nilai,get_city_Result_CallBack);
}
fungsi get_city_Result_CallBack(respon)
{
jika (respons.nilai != null)
{
document.all("DropDownList2").panjang=0;
var ds = respon.nilai;
if(ds != null && typeof(ds) == "objek" && ds.Tabel != null)
{
for(var i=0; i<ds.Tables[0].Baris.panjang; i++)
{
var nama=ds.Tabel[0].Baris[i].nama;
var id=ds.Tabel[0].Baris[i].id;
document.all("DropDownList2").options.add(Opsi baru(nama,id));
}
//document.all("TextBox1").value="";
}
}
kembali
}
</skrip>
<form id="form1" runat="server">
<asp:DropDownList ID="DropDownList1" runat="server">
</asp:Daftar DropDown>
<asp:DropDownList ID="DropDownList2" runat="server">
</asp:DropDownList>
<br />
</bentuk>
</tubuh>
</html>
AjaxTest.cs
menggunakan Sistem;
menggunakan Sistem.Data;
menggunakan Sistem.Konfigurasi;
menggunakan Sistem.Koleksi;
menggunakan Sistem.Web;
menggunakan Sistem.Web.Keamanan;
menggunakan Sistem.Web.UI;
menggunakan Sistem.Web.UI.WebControls;
menggunakan System.Web.UI.WebControls.WebParts;
menggunakan Sistem.Web.UI.HtmlControls;
menggunakan MeetWeb;
kelas parsial publik AjaxTest : System.Web.UI.Page
{
dilindungi kekosongan Page_Load (pengirim objek, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxTest));
jika (!Halaman.IsPostBack)
{
BindData();
}
}
kekosongan pribadi BindData()
{
Kumpulan Data ds = Kumpulan Data baru();
String sql = "Pilih id,nama dari pengujian";
mencoba
{
ds = GetDataSet(sql, "tes");
this.DropDownList1.DataSource = ds.Tabel[0];
this.DropDownList1.DataTextField = "nama";
ini.DropDownList1.DataValueField = "id";
ini.DropDownList1.DataBind();
this.DropDownList1.Attributes.Add("onclick", "areaResult();");
}
menangkap (Pengecualian ex)
{
Response.Write(ex.Message);
}
}
DataSet GetDataSet statis publik (string sql, string aa)
{
MeetWeb.SqlDataBase a = new MeetWeb.SqlDataBase("server=localhost\PMSERVER;uid=sa;pwd=sa;database=test");
Kumpulan Data ds = Kumpulan Data baru();
ds=a.CreateSet(sql, aa);
kembali ds;
}
[Metode AjaxPro.Ajax]
Kumpulan Data publik GetCityList(int id)
{
string sql = "pilih nama dari pengujian di mana id='" + id + "'";
kembalikan GetDataSet(sql,"tes");
}
}