2013-08-07 162 views
1

我期待創建一些客戶端JavaScript驗證。symfony2 - 如何添加自定義客戶端驗證規則

我想知道如何已經重新使用一個Symfony的已制定(見截圖),它看起來有點像一個提示,我認爲它看起來相當不錯。我想添加我自己的驗證規則 - 例如整數或其他定製規則。

enter image description here

回答

3

Symfony的不具有內置的客戶端表單驗證,你看到的是你的瀏覽器built-in HTML5 Form Validation

Symfony supports this通過猜測正確typerequiredmaxlengthpattern -attribute爲<input> -tag使用Doctrine MappingValidation信息已經存在。

如果你已經使用了你的領域正確的數據類型學說基本前端驗證將工作開箱。 當您通過例如Formbuilder構建表單時,您可以傳遞額外的HTML5驗證規則。

$formbuilder->add('range', null, array('pattern' => '\d+-\d+')); 

有關驗證相關屬性的完整列表,請參見https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input

被警告browser support for HTML5 validation差別很大。

1

它沒有在驗證其HTML5內置的Symfony2!並不是所有的瀏覽器都支持它!

如果你想擺脫它,使用JavaScript就在你使用屬性「NOVALIDATE」創建自己的驗證

形成標籤。

Symfony2應用程序中有很多客戶端表單驗證器插件,只是谷歌,你會發現它們中的很多,或者如果我的建議使用angular.js,你可以開始創建自己的驗證器!