Формат: текстовое поле, текстовое поле, текстовое поле, файл
1. файл aspx, html.代码
<HTML>
<ГОЛОВКА>
<title>WebForm1</title>
<SCRIPT Language="JavaScript">
//城市------------------------------
функция городаРезультат()
{
var city=document.getElementById("TextBox1");
WebForm1.GetCityList(city.value,get_city_Result_CallBack);
}
функция get_city_Result_CallBack (ответ)
{
если (response.value!= ноль)
{
//отладчик;
document.getElementById("DropDownList1").style.display="block";
document.getElementById("DropDownList1").length=0;
вар ds = ответ.значение;
if(ds != null && typeof(ds) == "object" && ds.Tables != null)
{
for(var i=0; i<ds.Tables[0].Rows.length; i++)
{
var name=ds.Tables[0].Rows[i].city;
var id=ds.Tables[0].Rows[i].cityID;
document.getElementById("DropDownList1").options.add(new Option(name,id));
}
}
}
еще
{
document.getElementById("DropDownList1").style.display="none";
}
возвращаться
}
функция получения данных()
{
varпровинция=document.getElementById("DropDownList1");
вар pindex =провинция.selectedIndex;
var pValue =провинция.options[pindex].value;
var pText =провинция.опции[пиндекс].текст;
document.getElementById("<%=TextBox1.ClientID%>").innerText=pText;
}
</СКРИПТ>
</HEAD>
<тело>
<form id="Form1" метод="post" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br>
<asp:DropDownList ID="DropDownList1" runat="server" Width="192px" style="display:none"></asp:DropDownList>
</форма>
</тело>
</HTML>2.cs代码
использование системы;
использование System.Collections;
использование System.ComponentModel;
использование System.Data;
использование System.Drawing;
использование System.Web;
использование System.Web.SessionState;
использование System.Web.UI;
использование System.Web.UI.WebControls;
использование System.Web.UI.HtmlControls;
использование System.Data.SqlClient;
пространство имен ajaxselect
{
/**//// <сводка>
/// Краткое описание для WebForm1.
/// </сводка>
общедоступный класс WebForm1: System.Web.UI.Page
{
защищенный System.Web.UI.WebControls.TextBox TextBox1;
защищенный System.Web.UI.WebControls.DropDownList DropDownList1;
частная пустота Page_Load (отправитель объекта, System.EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(WebForm1));
если (!Page.IsPostBack)
{
this.TextBox1.Attributes.Add("onchange", "cityResult();");
this.DropDownList1.Attributes.Add("onclick", "getData();");
}
}
Код, сгенерированный конструктором веб-форм#регион Код, сгенерированный конструктором веб-форм
переопределить защищенную пустоту OnInit (EventArgs e)
{
//
// CODEGEN: этот вызов требуется конструктору веб-форм ASP.NET.
//
ИнициализироватьКомпонент();
base.OnInit(е);
}
/**//// <сводка>
/// Обязательный метод для поддержки Designer - не изменять
/// содержимое этого метода с помощью редактора кода.
/// </сводка>
частная пустота InitializeComponent()
{
this.Load += новый System.EventHandler(this.Page_Load);
}
#endregion
GetCityList#region GetCityList
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]
общедоступный набор данных GetCityList (int columnsid)
{
string sql = "выбрать * из города, где отец любит '%" + идентификатор провинции + "%'";
вернуть GetDataSet(sql);
}
#конечныйрегион
GetDataSet#регион GetDataSet
общедоступный статический набор данных GetDataSet (строка sql)
{
строка ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
SqlDataAdapter sda = новый SqlDataAdapter (sql, ConnectionString);
DataSet ds = новый DataSet();
sda.Fill(дс);
вернуть дс;
}
#конечныйрегион
}
}3.
4. 数据库脚本
СОЗДАТЬ ТАБЛИЦУ [dbo].[город](
[id] [int] НЕ NULL,
[cityID] [nvarchar](6) COLLATE Chinese_PRC_CI_AS NULL,
[город] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[отец] [nvarchar](6) COLLATE Chinese_PRC_CI_AS NULL,
ОГРАНИЧЕНИЕ [PK_city] КЛАСТЕРНЫЙ ПЕРВИЧНЫЙ КЛЮЧ
(
[id] АСЦ
)С (IGNORE_DUP_KEY = OFF) НА [ПЕРВИЧНОМ]
) НА [ОСНОВНОЙ]