gpt4 book ai didi

javascript - DropDownList 未从存储过程中填充

转载 作者:行者123 更新时间:2023-12-02 19:21:13 27 4
gpt4 key购买 nike

我有一个简单的问题。我有一个 dropDownList,我试图用存储过程中的 id 填充它。然而它似乎不起作用。这是我的下拉列表:

 <div id="newExpenseTypeDialog" style="display:none;">
<label>Select new CaseFile:</label>
<asp:DropDownList runat="server" ID="ddlCaseFiles" DataSourceID="dsMyCaseFiles" DataTextField="Display" DataValueField="FileID" OnPreRender="ddl_PreRender" Width="524px" />
</div>

这是我的数据源:

<asp:SqlDataSource ID="dsMyCaseFiles" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" ProviderName="System.Data.SqlClient" SelectCommand="p_CaseFiles_ListActiveCaseFilesAssignedTo" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:SessionParameter Name="InvestigatorID" SessionField="InvestigatorID" />
<asp:SessionParameter Name="AssignedTo" SessionField="InvestigatorID" />
</SelectParameters>
</asp:SqlDataSource>

我的存储过程需要两个参数。调查员 ID 和分配给。然后它会返回所有匹配的 FileID。

现在这是我的 .aspx.cs 辅助代码:(页面加载)

if (Request.QueryString["ExpenseID"] != null)
{
if (!IsPostBack)
{
ddlCaseFiles.DataSourceID = "dsCaseFiles";
ddlCaseFiles.DataTextField = "Display";
ddlCaseFiles.DataValueField = "FileID";
}
}

和我的 Pre_Render:

protected void ddl_PreRender(object sender, EventArgs e)
{
DropDownList ddl = (DropDownList)sender;
try
{
if (ddl.Items[0].Value != "-1")
ddl.Items.Insert(0, new ListItem("--Select--", "-1"));
}
catch
{
ddl.Items.Insert(0, new ListItem("--Select--", "-1"));
}
}

列表中的 pre_render 正在工作,但没有,只是我的存储过程中没有数据。

最佳答案

我想你只是忘记调用 DataBind 方法

ddlCaseFiles.DataBind();

在三行之后的 if(!ispostback) block 中

关于javascript - DropDownList 未从存储过程中填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12515101/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com