Проверка поля JQuery

0

Я просто хочу проверить, совпадает ли вход с поля и поля1. но я не уверен, где моя ошибка.

Код jQuery:

$(document).ready(function () {
    $('#f').validate({ 
        rules: {
            field: {
                nowhitespace: true, 
                minlength: 6,
                required: true
            },
            field11: {
                equalTo: "#field1",
                required: true
            }
        },
        messages: {
        field: {
                required: "required",
                minlength: "min 6."
            },
            field11: {
                required: "required",
            equalTo: "same as field."
            }
        },
        submitHandler: function (form) { 
            javascript:document.f.submit();
        }
    });
});

HTML:

<form name="f" action="/path/to/service" method="POST">
    <table>
        <tr>
            <td><label for="field">Field</label>:&nbsp;&nbsp;</td>
            <td>
                <input class="field" class="pw" type='field' id="field" name='field' size="20" />
            </td>
        </tr>
        <tr>
            <td><label for="field1">field 1</label>:&nbsp;&nbsp;</td>
            <td>
                <input class="field" class="pw" type='field1' id="field1" name='field1' size="20" />
            </td>
        </tr>
        <tr>
            <td colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td colspan='2' align="center">
                <input name="submit" type="submit" value="Submit" />
            </td>
        </tr>
    </table>
</form>

Может ли кто-нибудь увидеть мою ошибку? спасибо за любую помощь

Теги:

2 ответа

1
Лучший ответ

Попробуйте такие rules как,

rules: {
        field: {
            nowhitespace: true,
            minlength: 6,
            required: true
        },
        field11: {
            equalTo: "#field",// Use "#field" in place of "#field1" 
            required: true
        }
    },

Также добавьте id в свой тег формы, как вы использовали $ ('# f'). Validate ({ like,

<form name="f" id="f" action="/path/to/service" method="POST">

Или попробуйте его без id,

$('form[name="f"]').validate({

Прочитать метод equalTo

0

У вас есть правило equalTo в field установленном в field #field1 - он всегда будет равен самому себе. Во-вторых, в правилах вы устанавливаете field11, но фактическое имя - field1. Попробуйте это вместо этого:

field1: {
    equalTo: "#field",
    required: true
}
  • 0
    о, извини, да, это не проблема. просто ошибка замены, потому что я изменил имена.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню