-1

jquery 検証プラグインを使用してフォームを検証しようとしています。入力の配列で動作させることができました。例えば:

<div class="row">
    <div class="row-holder">
        <input class="text" name="childFirstName[]" type="text" />
        <label>שם הילד/ה:</label>
    </div>
</div>

入力の数がわからないので、この方法を使用する必要があるとしましょう。

すべての入力をチェックするプラグインを作成することができました。また、2つのラジオボタンがあります。

<div class="row row-alt">
    <div class="row-holder">
        <div class="col-checkbox">
            <label>נקבה</label>
            <input class="radio" value="1" name="childGender[]" type="radio" />
        </div>
        <div class="col-checkbox">
            <label>זכר</label>
            <input class="radio" value="0" name="childGender[]" type="radio" />
        </div>
        <strong>מין:</strong>
    </div>
</div>

ご想像のとおりです。どちらも同じブロック内にあります。だから私はそれを複製してたくさん作ると...彼らは最初のように振る舞います(1を選択すると、フォーム内のすべてのラジオに影響します)また、バリデーターはそれを検証していないようです。

ここにリンクがあります: http://jwtdigital.co.il/MyMaterna/form.php

これで私を助けてくれることを願っています。私のひどい英語でごめんなさい:-)

4

1 に答える 1

0

Your code...

<input class="radio" value="1" name="childGender[]" type="radio" />
<input class="radio" value="0" name="childGender[]" type="radio" />

I cannot be certain because you have not posted enough code and your demo page link is now dead, but perhaps you've neglected to properly handle the special characters within your radio name.

http://docs.jquery.com/Plugins/Validation/Reference#Fields_with_complex_names_.28brackets.2C_dots.29

Names containing brackets, [] must be enclosed in quotes when the rules are declared within .validate()...

$(document).ready(function () {

    $('#myform').validate({ // initialize the plugin
        rules: {
            //other rules,
            'childGender[]': {
                required: true
            }
        }
    });

});

Working Demo: http://jsfiddle.net/RNHDy/

于 2013-02-17T16:35:15.320 に答える