0

ページに3回ロードするカスタムコントロールがあります。

カスタムコントロールは、テキストボックスとカスタム日付ピッカーコントロールで構成されています。

すべての日付ピッカーコントロールをロックしようとしています。

私は自分のコントロールで次のコードを試しました。

$(document).ready(function() {
    debugger;
    var mySelector = '#' + $('[id$=\'_SignatureNonPoliceControl\']', $(this)).attr('id');
    $(mySelector.replace('_SignatureNonPoliceControl', '_SignatureDatePicker_DatePickerControl')).BaseControlPlugin(BaseControlMethodsEnum.SetLocked, true);
});

ただし、これは最初のものをロックするだけで、3回実行します。

私のコントロールはこのように設定されています

            <uc8:SignatureCaptureNonPolice ID="DetaineeSignature" runat="server" Caption = "Person's Signature to Comments " RetainValueWhenDisabled="true" />

            <uc1:GenericDropDownList Caption="Reason For Not Signing " ID="DetaineeReasonNotSignedGenericDropDownList" runat="server" />

            <uc8:SignatureCaptureNonPolice ID="AppropriateAdultSignature" runat="server" Caption = "Appropriate Adults<br />Signature to Comments " RetainValueWhenDisabled="true" />

            <uc8:SignatureCaptureNonPolice ID="InterpreterSignature" runat="server" Caption = "Interpreter's Signature<br />to Comments " RetainValueWhenDisabled="true" />

$(this)を使用する必要がありますか?私はこれに全く慣れていません。

ヘルプ!

ありがとう

Kev。

4

1 に答える 1

0

日付ピッカーには共通のクラスがありますか?あなたはそれを選択することができます:

$('.className')

もう1つのオプションは、1つのセレクターですべてのIDをコンマで区切ることです。

$('#firstID,#secondID,#thirdID')

次に、ロックされたクラスをそれらに適用したいと思いますか?

$('.className').addClass("locked");

そして、次のようなことを行うことで、そのロジックを簡単に確認できます。

if (this.hasClass("locked") {
    // this is locked.
}

セレクターの詳細については、http://api.jquery.com/category/selectors/をご覧ください。

于 2012-06-01T18:33:44.627 に答える