修改查询字符串后面的asp代码中的下拉索引更改

时间:2011-03-01 03:24:31

标签: c# asp.net

您好    我有一个下拉框,位于formview的编辑模板中。我希望能够在更改下拉选择的索引时向查询字符串添加参数。

我试过

     Request.QueryString.Add("tabindex", (sender as WebControl).TabIndex.ToString());

但我得到一个例外,说收藏品是只读的。

这是我的标记

  <icms_ref:ReferenceDropDownList ReferenceDataManagerProviderName="ROCSQLReferenceDataProvider"
                    ID="ddlEnquirerHearType" TabIndex="2" runat="server" ReferenceSetName="EnquiryHearType"
                    AutoPostBack="true" OnSelectedIndexChanged="EnquirerHearType_SelectedIndexChanged"
                    DataTextField="ShortName" DataValueField="ReferenceId" />

这是我背后的代码。

 protected void EnquirerHearType_SelectedIndexChanged(object sender, EventArgs e)
    {
        var pnlEnquiryHearTypeOther = fvEnquiryInformation.FindControl("pnlEnquiryHearTypeOther") as Panel;
        pnlEnquiryHearTypeOther.Visible = DdlEnquirerHearType.SelectedValue == ((int)EnquiryHearType.Other).ToString();

        ResetTextBox("txtEnquiryHearTypeOther", fvEnquiryInformation);

        Request.QueryString.Add("tabindex", (sender as WebControl).TabIndex.ToString());

    }

1 个答案:

答案 0 :(得分:0)

您不能直接添加到QueryString集合,您必须将Response.Redirect添加到新的Url(修改URL以在您自己的查询参数中添加)。

 string url = HttpContext.Current.Request.Url.AbsoluteUri + "?tabindex=blah";
Response.Redirect(url, true);