簡體   English   中英

jQuery驗證插件無法在Keyup上進行驗證

[英]jQuery Validation Plugin cannot Validate on Keyup

我使用jQuery Validation Plugin,我的表單可以按以下方式進行驗證(假設我有2個字段A和B):

有用:
單擊A並鍵入一些內容,然后刪除。 然后,我單擊B。 在這種情況下,將顯示驗證消息。

這是行不通的:
我**單擊A,不輸入任何內容。 然后,我單擊了B。在這種情況下,與字段A相關的相關驗證消息未顯示。 但我希望它顯示如上。

我嘗試在validate方法中使用onsubmit,onkeyup和onclick參數,但這沒有任何意義。 我該如何提供?


剃刀:

jQuery(function () {
    $.validator.setDefaults(
    $("#myform").validate({
        //onsubmit: false, ???
        //onkeyup: true, ???
        //onclick:true, ???
        onkeyup: function(element){this.element(element);},
        rules: {
            'Applicant.Name': "required",
            'Applicant.Surname': "required"
        },
        messages: {
            'Applicant.Name': "Please enter your Name",
            'Applicant.Surname': "Please enter your Surname"
        }
    })
); 

});

您的代碼:

jQuery(function () {
    $.validator.setDefaults(
        $("#myform").validate({ .... })
    ); 
});

重要提示:你不能把.validate()方法的內部.setDefaults() 這個不成立。

  • .validate()方法用於初始化表單上的插件(帶有選項)。

  • .validator.setDefaults()方法用於設置將應用於頁面上所有表單的選項,但是,此方法不會初始化任何內容。

如果要為#myform設置選項,請使用#myform .validate() ...

jQuery(function () {
    $("#myform").validate({
        // options only for #myform
    });
});

如果要設置頁面上所有表單上使用的選項,請使用.validator.setDefaults() 然后在每種形式上使用.validate() ...

jQuery(function () {

    $.validator.setDefaults({
        // options for all forms on page
    });

    $("#myform").validate({
        // options only for #myform
    });

    $("#myform2").validate({
        // options only for #myform2
    });

});

默認插件操作:

默認情況下,在最初由另一個事件驗證該字段之后 ,該插件才執行任何“鍵入”驗證。

因此,這是默認onkeyup回調函數的正確修改版本,因此它將提供立即的 onkeyup驗證。

演示: http : //jsfiddle.net/QfKk7/

onkeyup: function (element, event) {
    if (event.which === 9 && this.elementValue(element) === "") {
        return;
    } else {
        this.element(element);
    }
}

您的代碼:

//onsubmit: false, ???
//onkeyup: true, ???
//onclick:true, ???

這些選項絕不能設置為true

說明文件:

聚焦
類型:布爾值或Function()
驗證模糊元素(復選框/單選按鈕除外) 如果未輸入任何內容,則將跳過所有規則,除非該字段已被標記為無效。 設置為“功能”可自行決定何時運行驗證。 布爾值true不是有效值


按鍵
類型:布爾值或Function()
驗證keyup上的元素 只要該字段未標記為無效,就不會發生任何事情。 否則,將在每個按鍵事件上檢查所有規則。 設置為false以禁用。 設置為“功能”可自行決定何時運行驗證。 布爾值true不是有效值


點擊
類型:布爾值或Function()
單擊驗證復選框和單選按鈕 只要該字段未標記為無效,就不會發生任何事情。 否則,將在每個按鍵事件上檢查所有規則。 設置為false以禁用。 設置為“功能”可自行決定何時運行驗證。 布爾值true不是有效值


提交
類型:布爾值或Function()
在提交時驗證表單 只要該字段未標記為無效,就不會發生任何事情。 否則,將在每個按鍵事件上檢查所有規則。 設置為false以禁用。 設置為“功能”可自行決定何時運行驗證。 布爾值true不是有效值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM