2011-09-04 95 views
11

我正在學習ExtJS,並且我遇到了兩個不同的概念,這些概念在邏輯上似乎與我相關。ExtJS:針對模型的表單驗證

  1. 模型類可以在其字段上指定自定義驗證方法。
  2. 模型實例可以加載到Forms中並從中檢索。

我的問題是:

  1. 是否有可能有形式使用模型的驗證設置來驗證用戶輸入的,並顯示實時反饋?
  2. 如果對1的答案是否,那麼是否有任何其他方式來設置表單中的實時驗證?

感謝

回答

4

1.是否有可能有形式使用模型的驗證設置,以 驗證用戶輸入的,並顯示實時反饋?

模型的實時驗證沒有內置功能。但是,使用模型驗證有更好的方法。

2.如果答案爲1爲否,則是有任何其他方式來設置 實時驗證的形式?

是的,有。
表單的字段支持vtype config(更多信息可查詢here)。默認情況下,每當字段的值會改變時,字段將被驗證(如果您想關閉此行爲設置字段的validateOnChange配置爲false)。

檢出docsValidation部分和Example usage部分)以獲取更多信息。

+0

嗯,我想我必須編寫一個自定義FormPanel來驗證使用模型..也許我必須寫一個支持「FormValidatingModel」以及.. – jrharshath

6
  1. 由於分子人說,沒有內置此功能,但是...

  2. 這似乎是一個普遍需要的功能(和這是令的Ext JS 4看起來有點半生不熟),和其他人都想出各種解決方案:

第一個建議修改Ext.form.field.Base類以允許表單字段綁定到模型字段,以及針對在表單字段定義以及驗證驗證爲那些限定在表單字段綁定的Model字段。

我正要測試第一個建議,可能會發布有關它的更新...

+0

你有沒有獲得任何有關方法的經驗? – lacco

+0

我有第一個解決方案很好地進行了一些修改,請參閱[鏈接](http://www.sencha.com/forum/showthread.php?125242-Form-lt-gt-Model-binding&p=715024&viewfull=1 #post715024) –