1

チェックボックスがチェックされているかどうかに基づいて、ボタンの有効/無効を設定しようとしています。以下は、動作しない私の JavaScript と ASP コードです。関数がまったく呼び出されていないのか、ボタンを無効にする方法に問題があるのか​​ わかりません。

<script type="text/javascript">

function OnChkAgreeChanged(chkAgree) {
    if (document.getElementById"chkAgree").checked)
        document.getElementById("btnSubmit").SetEnabled(true);
    else
        document.getElementById("btnSubmit").SetEnabled(false);
}
</script>


<asp:checkbox ID="chkAgree" runat="server" 
    Text="blablabla" onchange="javascript:OnChkAgreeChanged(this);"/>


<dx:ASPxButton ID="btnSubmit" runat="server" Text="Submit" 
    UseSubmitBehavior="true" AutoPostBack="true" Width="175px" 
    CssClass="submitButton" OnClick="btnSubmit_Click" enabled="false">
</dx:ASPxButton>
4

4 に答える 4

1

chkAgree文字列ではなくオブジェクトです。を使用する必要はありませんdocument.getElementById。これを試して...

<script type="text/javascript">

function OnChkAgreeChanged(chkAgree) {
    if (chkAgree.checked)
        document.getElementById("btnSubmit").disabled = null;
    else
        document.getElementById("btnSubmit").disabled = true;
}
</script>

また、onchange="javascript:OnChkAgreeChanged(this);"javascript: は必要ない場合があります。ASP のドキュメントを確認してください。

于 2013-07-08T05:23:32.390 に答える
0

JQuery ソリューション

$(document).ready(function () {
    $('#chkAgree').click(function () {
        if (this.checked) {
            $("#btnSubmit").prop('disabled', false);
        }
        else {
            $("#btnSubmit").prop('disabled', true);
        }
    });
});

または、JavaScript を使用して同じことを行いたい場合は、mohkhan が提案するソリューションを使用できます。

于 2013-07-08T06:04:25.107 に答える