|
页面:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<ext ageManager ID=" ageManager1" runat="server" />
<ext anel ID=" anel1" runat="server" Width="500px" >
<Items>
<ext ropDownList ID="DropDownList1" runat="server" Width="300px"></ext ropDownList>
</Items>
</ext anel>
</form>
</body>
</html>
////////////////////////////////////////////////////////////////////////////////////////////////
if (!IsPostBack)
{
ExtAspNet.PageContext.RegisterStartupScript
(
"var d=Ext.getCmp('" + DropDownList1.ClientID + "');" +
" var t;" +
" var oldInput=\"\";" +
" d.listWidth=500;" +
" d.addListener(\"keyup\",function(f,e){ " +
" newInput=document.getElementById(\"" + DropDownList1.ClientID + "\").value;" +
" if (oldInput==newInput) {return;} " +
" oldInput=newInput;" +
" clearTimeout(t);" +
" t=setTimeout(\"__doPostBack('loaddata',newInput)\",1000)" +
"});"
);
}
else
{
if (Request["__EVENTTARGET"] == "loaddata")
{
SqlConnection Conn = new SqlConnection(ConfigurationManager.AppSettings["c2cc.cn"]);
Conn.Open();
SqlCommand cmd = new SqlCommand(string.Format("SELECT ID,corp_name,state FROM corp where charindex('{0}',corp_name) > 0 and state >0", Request["__EVENTARGUMENT"]), Conn);
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
DropDownList1.Items.Clear();
while (dr.Read())
{
DropDownList1.Items.Add(new ExtAspNet.ListItem(dr["corp_name"].ToString(), dr["id"].ToString() + DateTime.Now.Ticks.ToString()));
}
dr.Close();
Conn.Close();
ExtAspNet.PageContext.RegisterStartupScript("document.getElementById(\"" + DropDownList1.ClientID + "\").value='" + Request["__EVENTARGUMENT"] + "';");
}
}
}
protected override void Render(HtmlTextWriter writer)
{
StringWriter strWriter = new StringWriter();
base.Render(new HtmlTextWriter(strWriter));
writer.Write(
strWriter.ToString()
.Replace("id: \"" + DropDownList1.ClientID + "\",", "id: \"" + DropDownList1.ClientID + "\",editable: true,hideTrigger:true,")
);
}
现在有一个问题,有时候输入中文不显示,还有用拼音输入中文词组的时候输入慢了会报错,可能我讲的不清楚,烦请大家帮我解决下
|
|