2014-03-27 136 views
1

可以KendoUI網格強制最小長度驗證。我有一些麻煩。看截圖。KendoUI網格最小長度不工作

我已經設置了最小長度和最大長度。它不允許我輸入超過10個字母,但是,我可以輸入少於2個字母並更新網格中的條目。

這是劍道問題嗎?

Developer Tools screenshot

+0

您可以將您的代碼進行驗證?你是否也在進行自定義驗證? – gitsitgo

+0

不,沒有自定義驗證,我只是將最小長度字段設置爲值爲2的驗證字段... –

+1

啊我認爲我看到了問題。基本上,Html5中沒有minlength屬性,所以你不能以這種方式限制它。你必須使用自定義驗證。讓我知道你是否需要幫助。關於自定義驗證,那裏有一些已知的錯誤,但並不完全正確。 – gitsitgo

回答

3

正如我在評論中提到,使用MINLENGTH不起作用,因爲該屬性不存在HTML5,而最大長度一樣。

相反,您必須使用自定義驗證或使用模式屬性。

模式屬性

my_name { 
    validation: { 
      required: true, 
      pattern:'.{2,10}' 
    } 
}, 

這意味着my_name必須爲2至10個字符之間。它可以讓你輸入更少或更多,但當你嘗試更新時會拋出無效的信息。

自定義驗證:

my_name { 
    validation: { 
      required: true, 
      lengthRule: function (input) { 
       if (input.is("[name='DirectionName']") && input.val() !== "") { 
        input.attr("data-lengthRule-msg", "My Name must be between 2 to 10 characters."); 
        return (input.val().length<=10 && input.val().length>=2); 
       } 
       return true; 
      }, 
    } 
}, 

採用後一種方法,有一個已知的錯誤,所以我不熱衷於使用後一種方法。

定製Valiation錯誤FYI:Validation is not always triggered when editing with backspace

+0

如果我使用模式屬性,我如何定製驗證消息?謝謝 – sendreams