-2

いくつかのコードを囲むために if ステートメントを追加したいと思います。if ステートメントが必要です(ただし、jquery内):

If (chkSurety.checked = true){
SuretyFullName: { required: true }, // This is validation plugin and must stay like this.
SuretyIDNumber: { required: true}, 
SuretyPhysicalAddress: { required: true }, 
SuretyHomeTel: { required: true}, 
SuretyPlace: { required: true}, 
SuretyDay: { required: true }, 
SuretyMonth: { required: true } 
}
Else
{
SuretyFullName: { required: false },
SuretyIDNumber: { required: true}, 
SuretyPhysicalAddress: { required: true }, 
SuretyHomeTel: { required: true}, 
SuretyPlace: { required: true}, 
SuretyDay: { required: true }, 
SuretyMonth: { required: true } 
}

この if ステートメントは C# であり、jquery である必要があります。これはすでにイベント内にあるため、checkbox.checked をイベントにしないでください。jquery で上記のコードが必要なだけです。

事前に感謝します。さらに情報が必要な場合は、お問い合わせください:)

4

5 に答える 5

3

チェックボックスの ID が であり、質問で指定されたコードに従って、オブジェクトの状態chkSuretyを更新するだけであると仮定します。SuretyFullName

SuretyFullName.required = $('#chkSurety').is(':checked');

または(より効率的に)jQueryなし:

SuretyFullName.required = document.getElementById('chkSurety').checked;

jQuery 検証プラグイン用のいくつかのルールを作成しようとしているようです。したがって、次のようになります

// set the default rules
var rules = {
    SuretyFullName: { required: false },
    SuretyIDNumber: { required: true}, 
    SuretyPhysicalAddress: { required: true }, 
    SuretyHomeTel: { required: true}, 
    SuretyPlace: { required: true}, 
    SuretyDay: { required: true }, 
    SuretyMonth: { required: true } 
 };

 // override the full name rule, based on the checkbox
 rules.SuretyFullName.required = $('#chkSurety').is(':checked');

 $('#fmrMain').validate({
      rules: rules,
      ...
 });
于 2012-05-18T07:28:04.853 に答える
2

簡単に言えば:

var yourObject = {SuretyFullName: {必須: chkSurety.checked }};

if何らかの理由で -syntaxが本当に必要な場合:

var yourObject = {};
if (chkSurety.checked) {
    yourObject.SuretyFullName = true;
} そうしないと {
    yourObject.SuretyFullName = false;
}

注:if (chkSurety.checked == true)は冗長ですif (chkSurety.checked)が、優れています。

于 2012-05-18T07:30:29.227 に答える
1

純粋なJavaScriptを使用するのと同じくらい簡単な場合は、JQueryライブラリ全体を含めないでください。

ただし、JQueryを使用する必要があるため:-)

if ($('#chkSurety').is(":checked")) {
    // checked
} else {
    // not checked
}

http://jsfiddle.net/XXHrE/3/- テストするには...

于 2012-05-18T07:34:39.290 に答える
1

これを試して:

if ($("#chkSurety").is(":checked")) {
    // rest of code...
}
于 2012-05-18T07:27:59.540 に答える
0

これは完全に機能します。

SuretyFullName: { required: function (element) { if ($('#chkSuretyShip').is(':checked')) { return true } else { return false} } }
于 2012-05-18T13:26:36.367 に答える