0

フォームにドロップダウン リストとボタンがある単純な Web があります。ドロップダウン リストはデータベース内のテーブルにバインドされており、ID が 1 から 3 までの 3 つの値 (毎週、毎月、選択してください) を保持しています。

ユーザーにオプションの選択を促すために、ドロップダウン リストの最初の項目として項目 3 (選択してください) をプルバックするようにデータソースを設定しました。項目 1 と 2 にはデータが割り当てられており、これにより、これらのオプションの関連データが引き戻されます。

これが私の問題です。ユーザーがアイテム1または2を選択し、オプション3のボタンを非表示にするまで、ページが読み込まれるときにボタンを非表示にする必要があります。ページ読み込みイベントとドロップダウン リストのコードでこれを完了しようとしましたが、これを機能させることができないようです。

    If IsNumeric(DropDownList1.SelectedValue) = 3 Then
        btnAddAgendaTemplate.Visible = False
    End If
4

3 に答える 3

0

ページ読み込みイベントで、次のコードを記述します

If Not Page.IsPostBack() Then
//Set default value in drop down list as 3
End

ドロップダウンの選択インデックス変更イベントを記述し、その中に次のコードを記述します。

If DropDownList1.SelectedValue = "3" Then
    btnAddAgendaTemplate.Visible = False
ELSE
    btnAddAgendaTemplate.Visible = True
END
于 2012-04-18T10:16:32.243 に答える
0

編集: (コメントに基づいて)
In Selected Index changed event for the drop down check for selectedvalue が 3 であることを確認し、それに応じて処理します

コード ビハインドで selectedIndexChanged イベントが次のようになっているとします。

Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
 If DropDownList1.SelectedValue.Equals("3") Then
     btnAddAgendaTemplate.Visible = False
 End If
End Sub
于 2012-04-18T09:02:54.437 に答える
0

比較を次のように変更します。

   If DropDownList1.SelectedValue = "3" Then
        btnAddAgendaTemplate.Visible = False
    End If

関数IsNumbericは、これが数値であるかどうかを確認し、数値に変換せず、3 と比較しません。現在、SelectedValue は文字列であるため、「3」と直接比較します。数値に変換する理由はありません。です。

于 2012-04-18T08:59:48.797 に答える