2011-09-27 72 views
1

我有幾個元素在我的zend窗體中,有時通過JavaScript隱藏。禁用Zend表單元素驗證,如果隱藏

我想禁用他們的驗證,如果他們隱藏,所以表單將是有效的。

任何方式在服務器端做到這一點?或在元素設置?

謝謝。

回答

1

根據不同的情況,你可以在同一時間關閉隱藏的項目。因此他們不會發布,然後您可以使用isValidPartial只驗證在參數中發送的字段。

+0

我該如何禁用它們? – Ran

+0

如果你正在使用'Zend_Form_Element',你可以聲明你的隱藏字段像這樣'new Zend_Form_Element_Hidden('fieldName',array('disabled'=>'disabled'));'。但是,再次,如果你禁用他們,他們將不會被張貼。 – jhuet

0

我想你可能需要在調用isValid()之前刪除隱藏字段的驗證器(通過調用clearValidators())。

這裏有一個類似的問題:Zend form validation。你可能從答案中得到一些啓發。

希望它能幫助,

+0

它有點不同,因爲在那篇文章中元素被完全刪除。我只是把他們放在一個顯示器:無。無論如何在服務器端檢測到它們被隱藏了嗎? – Ran