【发布时间】:2017-07-02 07:03:28
【问题描述】:
我在后端 C# 代码生成的表中有一个带有 40 ++ 下拉列表的 ASPX 页面,如下所示: Drop Down Lists
这些下拉列表可以通过下面的第 3 方 jQuery 帮助进行搜索:
<script src="../Scripts/jquery-1.8.3.min.js" type="text/javascript" ></script>
<script src="../Scripts/jquery.searchabledropdown-1.0.8.min.js" type="text/javascript"></script>
一切正常,除了页面加载速度非常慢,大约需要 20 到 30 秒。
有什么建议吗?在野外搜索中是否有其他方法或其他更好的建议?
谢谢...
这是后端代码的总结:
//This chunk build the drop down list in the table
for (int y = 1; y <= DETAIL_ROW; y++)
{
DropDownList InternalOrderDDL = new DropDownList();
InternalOrderDDL.ID = "InternalOrderDDL" + y.ToString();
InternalOrderDDL.Width = Unit.Percentage(100);
InternalOrderDDL.Attributes.Add("onfocus", "ChangeDropDownWidth(this);");
InternalOrderDDL.Attributes.Add("onblur", "ResetDropDownWidth(this);");
HtmlTableCell InternalOrderCell = new HtmlTableCell();
InternalOrderCell.Controls.Add(InternalOrderDDL);
NewRow.Cells.Add(InternalOrderCell);
DetailTable.Rows.Add(NewRow);
}
//This chunk of code populate the Drop Down List
DataTable InternalOrderDT = new DataTable();
using (SqlConnection Conn = new SqlConnection(CONNECTION_STRING))
{
SqlCommand Cmd = new SqlCommand("spActiveInternalOrderRetrieveListByCompany", Conn);
Cmd.CommandTimeout = 0;
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("CompanyID", SqlDbType.NVarChar).Value = companyID;
Conn.Open();
SqlDataReader Dr = Cmd.ExecuteReader();
InternalOrderDT.Load(Dr);
Conn.Close();
}
for (int y = 1; y <= DETAIL_ROW; y++)
{
DropDownList InternalOrderDDL = DetailTable.FindControl("InternalOrderDDL" + y.ToString()) as DropDownList;
InternalOrderDDL.DataTextField = "InternalOrderName";
InternalOrderDDL.DataValueField = "InternalOrderID";
InternalOrderDDL.DataSource = InternalOrderDT;
InternalOrderDDL.DataBind();
InternalOrderDDL.Items.Insert(0, new ListItem("--", ""));
}
【问题讨论】:
-
能否把后端代码放上来。
-
同时尝试分析您的数据库调用
-
@NayanKatkani 我编辑了帖子。
标签: c# jquery asp.net .net web