2015-01-09 55 views
1

我想知道是否有辦法使用表單字段的驗證狀態來授權/阻止要執行的操作。如果驗證失敗,GXT會阻止執行動作

這可能會更清楚一個例子。 我正在顯示一個窗體,其中包含必填字段以便在數據庫中創建記錄,並使用保存按鈕來執行此操作。

如果表單的靜態驗證不正常,我想要防止保存按鈕操作。 有沒有內置的機制來做到這一點? 感謝

回答

2

FormPanel有一個方法isValid將由呼籲他們isValid自動驗證所包含的所有字段(實施IsField)。如果有任何返回false,則表單的isValid方法也將返回false

您可以在ClickHandler中使用調用表單的保存按鈕,如果無效,只需返回而不做任何操作。

@UiHandler("formPanel") 
void onSave(ClickEvent event) { 
    if (!formPanel.isValid()) { 
     return; 
    } 

    saveToDb(); 
}