2017-06-29 487 views
0

我想強制用戶更改第一個下拉列表的選擇如果他/她在第二個下拉列表中選擇了特定值名單。Asp .NET創建值從另一個下拉列表中檢查下拉列表

<asp:DropDownList ID="ddlGxP" runat="server" CssClass="stdDropdownSmall" OnSelectedIndexChanged="ddlGxP_SelectedIndexChanged" AutoPostBack="true" /> 

< 其他 { } 以上是第一個下拉列表,其中用戶應該從「ddlGxP」

選擇值以下是第二個下拉列表,我需要要在用戶進行選擇時進行檢查,我必須檢查第一個下拉列表。

<div class="divStandard"> 
    <asp:Label ID="Label23" runat="server" CssClass="stdLabel">nalized Method <span class="mandatory"> *</span></asp:Label> 

    <asp:DropDownList ID="ddlFinalizedMethod" runat="server" CssClass="stdDropdown" /> 
    <asp:CustomValidator ID="cvFinalizedMethod" runat="server" ControlToValidate="ddlFinalizedMethod" InitialValue="0" OnServerValidate="cvFinalizedMethod_ServerValidate" 
     CssClass="RequiredFieldError" ErrorMessage=" ! Please select another GxP Standard" /> 
    } else { 
    <asp:TextBox ID="txtFinalizedMethodDisabled" runat="server" CssClass="stdTextboxSmallDisabled" Enabled="false" /> 
    } 

</div> 

回答

1

我沒有足夠的聲望,所以這裏是我的評論。

我只是想用基本術語來說明問題。 您的設計視圖由兩個下拉列表組成。 您在dropdownlist1上做出選擇,其selectedindexchanged被觸發執行某種操作。

您現在在dropdownlist2上做出選擇,觸發其selectedindexchanged並對dropdownlist1執行某種操作,可以更改其內容或選定的值;

對於等待而言,由於忘記了某些事情,我犯了一些簡單的錯誤;

答案!!!!

<body> 
<form id="form1" runat="server"> 
<div> 
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label></div> 
<div> 
    <asp:DropDownList ID="DropDownList1" runat="server"> 
    </asp:DropDownList> 
    <asp:DropDownList ID="DropDownList2" runat="server" AutoPostBack="True" 
     onselectedindexchanged="ddl2_selectindexchange"> 
    </asp:DropDownList> 
</div> 
</form> 
</body> 


protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!Page.IsPostBack) 
    { 
     List<string> str = new List<string>(); 
     str.Add("red"); 
     str.Add("blue"); 
     str.Add("black"); 

     List<string> str2 = new List<string>(); 
     str2.Add("red"); 
     str2.Add("blue"); 
     str2.Add("black"); 

     DropDownList1.DataSource = null; 
     DropDownList1.DataSource = str; 
     DropDownList1.DataBind(); 
     DropDownList2.DataSource = null; 
     DropDownList2.DataSource = str2; 
     DropDownList2.DataBind(); 

    } 
} 

protected void ddl2_selectindexchange(object sender, EventArgs e) 
{ 
    DropDownList ddl = new DropDownList(); 
    ddl = sender as DropDownList; 

    ListItem li = new ListItem(); 
    li = ddl.SelectedItem; 
    string s = li.Text; 
    Label1.Text = s; 
} 
+0

是的,這是正確的。我試圖找到例子,但沒有運氣。你可以幫我嗎? – Mindan

+0

酷我現在可以對我的答案發表評論 – Bernardo

+0

ddls的值也是在運行時在頁面加載時動態設置的 – Bernardo