0

jQuery検証プラグイン1.7の使用を開始しました。

いくつかのビューモデルクラスの入力を収集するインターフェイスのようなウィザードがあります。ユーザーが[次へ/前へ]ボタンをクリックするたびに、ステップで表示されるすべてのオブジェクトを検証しようとしています。

私のjqueryコードはこのようなものです

$w.bind("jwizardchangestep", function (event, ui) {
    if (ui.type !== "manual") {
        var $currentStep = $w.find(".jw-step:eq(" + ui.currentStepIndex + ")");
        var $inputs = $currentStep.find("input:text");

        if ($inputs.length > 0 && !$inputs.valid()) {
            $currentStep.find("label.error").effect("highlight");
            return false;
        }
    }
});

ここ$inputsには、ページ内のすべての入力ボックスへの参照が含まれています。

とにかく、入力要素がまったく入力されていなくても、関数$inputs.valid()は常に戻ります。trueこのような別のjQuery呼び出しで指定した検証ルールに何か問題があるのではないかと疑っています

$("#registerForm").validate({
    rules: {
        Firm_Name: "required",
        Firm_StreetAddress: "required",
        Firm_ZipCode: "required",
        Firm_City: "required"
    }
});

これは、入力ボックスのサンプルマークアップコードです。

<input id="Firm_Name" name="Firm.Name" style="width: 460px;" type="text" value="" class="ui-widget-content">
4

2 に答える 2

1

名前を使ってみる

$("#registerForm").validate({
    rules: {
        Firm.Name: "required",
        Firm.StreetAddress: "required",
        Firm.ZipCode: "required",
        Firm.City: "required"
    }
});
于 2010-11-07T15:12:08.537 に答える
0

メタデータのルールを使用して動作させました。

コールだそうです

$("#registerForm").validate({
    rules: {
        Firm_Name: "required",
        Firm_StreetAddress: "required",
        Firm_ZipCode: "required",
        Firm_City: "required"
    }
});

ウィザードの次のボタンをクリックするたびに検証したかったので、送信時にチェックするルールを設定しますが、これは私がやりたかったことではありません。

メタデータでのルールの使用

<input id="Firm_Name" name="Firm.Name" 
    style="width: 460px;" type="text" value="" 
    class="required ui-widget-content">

非常にうまく機能します。みんな助けてくれてありがとう

于 2010-11-07T21:57:49.103 に答える