0

アクティビティ名とチェックボックス列を表示するデータグリッドがあります。ユーザーは、そのアクティビティを選択する場合はチェックボックスをオンにし、送信ボタンを押して正常に追加します。

ユーザーがチェック済みのチェックボックスをオフにしたい場合は、そのアクティビティが現在他のものに関連付けられているかどうかを確認するために、特定の検証を行う必要があります。

どうやってやるの?

4

2 に答える 2

1

クライアント側で検証できる場合は、GridView にテンプレート フィールドを追加し、テンプレート フィールドに CheckBox を追加して、JavaScript イベントをアタッチします。

<asp:TemplateField HeaderText="IsActive">
    <ItemTemplate>
        <asp:CheckBox ID="chkActive" Checked='<%# Bind("IsActive") %>' runat="server" onClick="checkboxClicked(this)" />
    </ItemTemplate>
</asp:TemplateField>

JavaScript イベントを処理し、検証を実行します。ユーザーがチェックボックスをオフにして検証が失敗した場合、次のようにユーザーにプロンプ​​トを表示し、JavaScript でチェックボックスをオンにすることができます。

function checkboxClicked(src) {
    if (!src.checked) {
        var valid;
        //Perform validation and set a boolean value to the variable valid
        if(!valid)
            src.checked = true;
     }
}

これは、探しているものを達成するのに役立つ場合があります。他にヘルプが必要な場合は、コメントを入力してください。

于 2012-11-05T14:53:53.487 に答える
0

あなたのマークアップを見なくても、HTML私はあなたにこのようなことを提案することができます...

$('#my_checkbox').click(function(){
if($(this).is(':checked'){
   // do something here
} else {
   // Perform your certain validations here..
}

}

于 2012-11-05T07:28:11.240 に答える