2016-11-02 18 views
0

別のドロップダウンリストの選択された値に基づいて、ドロップダウンリストに必要なフィールドバリデーターを無効にしたいとします。最初のドロップダウンリストの選択した値が、私はこの作品を作るにはどうすればよいの「その他」VB + ASP.net:条件でrequiredfieldvalidatorを無効にする方法

If ddl_Title.SelectedValue Is "Other" Then 

     RequiredFieldValidator4.Enabled = True 

    Else 

     RequiredFieldValidator4.Enabled = False 

    End If 

とき

<asp:DropDownList runat="server" CssClass="form-control " ID="ddl_Title" ClientIDMode="Static" CausesValidation="false"> 
             <asp:ListItem>Select</asp:ListItem> 
             <asp:ListItem>Mr</asp:ListItem> 
             <asp:ListItem>Mrs</asp:ListItem> 
             <asp:ListItem>Ms</asp:ListItem> 
             <asp:ListItem>Miss</asp:ListItem> 
             <asp:ListItem>Other</asp:ListItem> 
            </asp:DropDownList> 
           </div> 


          <div class="row" id="Other"> 
          <div class="col-md-1"></div> 
          <div class="col-md-2"><asp:DropDownList runat="server" CssClass="form-control " ID="ddl_Other" Width="155"></asp:DropDownList> 
          <asp:RequiredFieldValidator ID="RequiredFieldValidator4" 
                 runat="server" 
                 ControlToValidate="ddl_Other" 
                 ErrorMessage="*Title is required." 
                 Forecolor="Red" 
                 Display="Dynamic" 
                 InitialValue="-1"> 
          </asp:RequiredFieldValidator> 
          <div class="col-md-9"></div>                   
          </div> 
         </div> 

だから検証コントロールにのみ有効になっています?

答えて

1

AutoPostBacktrueに設定して、DropDownListにOnSelectedIndexChangedイベントを追加します。

<asp:DropDownList runat="server" CssClass="form-control " ID="ddl_Title" ClientIDMode="Static" CausesValidation="false" OnSelectedIndexChanged="ddl_Title_SelectedIndexChanged" AutoPostBack="true"> 

コードビハインドです。

Protected Sub ddl_Title_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) 
    If ddl_Title.SelectedValue Is "Other" Then 
     RequiredFieldValidator4.Enabled = True 
    Else 
     RequiredFieldValidator4.Enabled = False 
    End If 
End Sub 
+0

これはうまくいきました。 –

0

あなたのドロップダウンのCauseValidationプロパティをtrueにします。

msdnから。

コントロールがいずれのコントロールでも検証を実行する場合はtrue フォーカスを受け取ったときに検証が必要です。それ以外の場合はfalseです。 のデフォルト値はtrueです。

関連する問題