2011-10-16 81 views
0

的最新版本即使Zend框架的元素沒有setRequired(其隨後將被解釋或具有setRequired(假)稱爲它總是呈現爲<input ..... required="">Zend的形式呈現一個元素與所需=「」)所要求的瀏覽器

而且看到這個代碼的Chrome,Firefox和瀏覽器等最新版本,同時試圖發佈之前驗證的形式,表明該字段是必需的錯誤消息(儘管它不是)。它似乎瀏覽器檢測到所需的屬性的存在,並不關心它的值(在這種情況下爲空)。

此外,我試圖<form novalidate="novalidate" ...>忽略瀏覽器驗證,但它沒有工作(無論如何這不會是一個好的解決方案,因爲可能仍然需要保持瀏覽器端驗證)。

所以,問題是如何使- > setRequired(真)渲染所需= 「需要」和缺乏- > setRequired()- > setRequired(假)不呈現任何屬性?

+0

請發佈您的代碼。據我可以告訴ZF不支持所需的屬性,所以你使用setAttrib()手動設置它? –

回答

0

在輸入標籤中「required」屬性是一個HTML5屬性,不確定Zend是否支持該屬性。

通過擴展zend_form來聲明表單元素,通過使用「 - > setRequired(true)」可以很容易地設置它。

+0

請重新閱讀我的問題。如果您不確定,請先檢查。然後,我不會問如何根據需要設置字段,而恰恰相反 - 試圖設置爲不需要的呈現的HTML不好。 –

1

- > setRequired(true)僅用於服務器端驗證。添加HTML5需要我用這個

- > setAttrib(通過「需要」,「真」)

這將添加必需=「真」,這是不是真的有必要就足夠所需的簡單。但我從來沒有在Zend找到過這樣的方法

相關問題