0
我有一個包含可編輯的textinputcell
, 看到下面的圖片是可編輯的textinputcell
如何在細胞表驗證可編輯的文本
我想驗證列如果數學院則細胞表用戶只能輸入數字(整數單元格),而大學用戶名稱只能輸入字符串(文本單元格)。有沒有辦法在輸入文本之前進行驗證?
我有一個包含可編輯的textinputcell
, 看到下面的圖片是可編輯的textinputcell
如何在細胞表驗證可編輯的文本
我想驗證列如果數學院則細胞表用戶只能輸入數字(整數單元格),而大學用戶名稱只能輸入字符串(文本單元格)。有沒有辦法在輸入文本之前進行驗證?
編輯2:
我再次檢查我的回答我我是完全錯誤的細胞。 對於一個單元格來說,它的超級簡單:將CellPreviewHandler
添加到您的表格中,該表格僅允許某個列上的數字。
table.addCellPreviewHandler(new Handler<String>() {
@Override
public void onCellPreview(CellPreviewEvent<String> event) {
if (event.isCellEditing()) {
int column = event.getColumn();
String type = event.getNativeEvent().getType();
if (column == 0 && BrowserEvents.KEYPRESS.equals(type)) {
if ((keyCode < 48 || keyCode > 57)) {
event.setCanceled(true);
event.getNativeEvent().stopPropagation();
event.getNativeEvent().preventDefault();
}
}
}
}
});
感謝您的線索..沒有上述代碼無法正常工作..我添加fieldupdater獲取更新的值在同一時間,如果我添加onbrowserevent fieldupdater不工作 –