2013-06-12 35 views
2

我有一個帶有三個按鈕的窗體。一個用於添加對象,一個用於刪除,另一個用於編輯對象。如何禁用symfony 2.3中特定按鈕的html5驗證

我現在想要在使用Symfony 2.3中引入的新表單按鈕的添加按鈕中禁用html5驗證。這是可能的還是我必須創建一個新的按鈕類型?我怎麼能這樣做?

回答

4

您只需將html屬性novalidate或novalidate =「novalidate」添加到元素即可。你可以這樣做,你可以添加來自枝形模板的表單類型的任何其他屬性。例如:

{{ form_widget(form.add, { 'attr': {'novalidate': 'novalidate' }}) }} 

事實上,再次閱讀你的問題,我不是很確定你想上的按鈕做什麼樣的驗證。你必須對所有你不想驗證的元素進行驗證。

你也可以把NOVALIDATE表單本身:

<form action="demo_form.asp" novalidate> 
+0

按鈕上的novalidate點是禁用所有其他字段的表單驗證。例如,當提交按鈕並刪除行按鈕時,您可能希望刪除具有無效字段的行,但您只想提交有效的表單。 (不幸的是,這不是'novalidate'的作用。) –

5

要禁用表單驗證,請在提交按鈕formnovalidate

例如:

<div class="row"> 
    <input type="email"> 
    <input formnovalidate type="submit" value="Remove row"> 
</div> 
<div class="row"> 
    ... 
</div> 
<input type="submit" value="Submit rows"> 

注意formnovalidate是刪除按鈕,所以即使場旁邊,它包含無效的電子郵件,但它仍然可以被刪除。真正的提交按鈕沒有formnovalidate屬性,所以在實際提交表單之前,所有的電子郵件都必須有效。

+0

搜索這個小時。謝謝! – TMichel

+0

你是說輸入還是輸入? (在上面的代碼示例中) –

+0

@JosephAstrahan當然,它應該是「輸入」。只是一個小錯字。固定。 –