2014-01-20 74 views
0

儘管我從未使用過symfony,但我決定用symfony2框架開展一個大型項目,我的第一次冒險。在Symfony2中自定義客戶端表單驗證器

我創建了一個註冊/登錄系統,但我遇到了一個小的定製問題:

enter image description here

正如你在前面的截圖中看到,有一個Symfony2的默認客戶端驗證,和我希望是使用翻譯器對象來定製它,改變它的風格,查看並翻譯其英文文本(在截圖中爲法語)。

這是形式的樹枝視圖的一部分:

<li> 
    {{ form_errors(registerForm.password,{'attr':{'class' : 'err errx1'}}) }} 
    {{ form_widget(registerForm.password,{'attr':{'class' : 'inpt mdx2','placeholder':'signup.password'| trans | capitalize}}) }} 
     </li> 

有沒有提供一個解決這個問題非常的任何文檔?

回答

1

實際上,您所看到的是默認的HTML5客戶端驗證。這與Symfony沒什麼關係,除了你可以配置的事實,如果你需要它。如果你不希望出現這種驗證信息,您可以添加以下時,要渲染的形式:

{{ form_start(form, {'attr': {'novalidate': 'novalidate'}}) }} 

如果要禁用它僅適用於特定的行同樣爲form_row

查看The docs瞭解更多信息。

如果你想從服務器定製你的驗證錯誤,這是多一點工作。我會提交請求,即ajax,然後使用該響應來應用我的自定義驗證錯誤。有幾種方法可以做到這一點,取決於您所熟悉的內容。

+0

謝謝,我只是想知道爲什麼我不能右擊它在螢火蟲中查看它。 實際上,我從來沒有使用過Html5的功能...... + 1 – SmootQ

+0

所以,我將刪除這些驗證器,然後根據我的需要定製服務器端的驗證器。 畢竟,在這裏我不需要客戶端驗證。 – SmootQ