2012-08-15 75 views
2

我有一個textfield和一個按鈕,如果textfield保留爲空或空,我想在用戶單擊Send按鈕時彈出錯誤消息。我的代碼如下;當文本字段爲空時不顯示錯誤消息

根據我的代碼,我可以點擊Send按鈕並提交即使textfield值爲空。但是,當我點擊文本字段並將其留空時,文本框的邊框變爲紅色,並且當我通過textfield時,彈出錯誤消息。

我想要做的是當用戶點擊發送按鈕時彈出錯誤消息(如果文本框爲空)。

    { 
         xtype: 'button', 
         text: 'Send', 
         action: 'send1' 

        }, 

        xtype: 'textfield',        
         name: 'name', 
         fieldLabel: 'Name', 
         allowBlank: false, 
         blankText: 'Name left blank' 
        }, 

回答

1

如果您需要顯示彈出消息,則需要在按鈕單擊處理程序中手動執行此操作。 ExtJs不提供內置的功能。然而,你可以添加

formBind: true 

到您的按鈕定義和ExtJS的將禁用按鈕,直到上的所有元素都驗證器會通過。

4
    { 
        xtype: 'button', 
        text: 'Send', 
        action: 'send1' 

       }, 
       { 
        xtype: 'textfield', 
        id:'nameField', 
        name: 'name', 
        fieldLabel: 'Name', 
        allowBlank: false, 
        blankText: 'Name left blank' 
       } 

通過給文本框的ID,U可以在按鈕

   if(Ext.getCmp('nameField').getValue().length== 0) 
        Ext.Msg.alert('FormSubmissionError','TextField should not be empty'); 
       else 
        Submit the form. 
+0

Ext.getCmp( '名稱字段')的處理程序下面的代碼。的isEmpty()而不是Ext.getCmp ('nameField')。getValue()。length == 0更合適,但這種方法對於提問者來說是最簡單的 – Reimius 2012-08-16 16:43:41

相關問題