我有列Minimum和MaximumVaadin 8 Grid。這些列是可編輯的。我需要讓驗證器還相互檢查這 2 個值,以便如果在字段中輸入的值Maximum小于Minimum該行中的條目值,驗證器將發(fā)出錯誤,反之亦然。代碼如下:grid.addColumn(AuditParams::getMaxAmt, new NumberRenderer()).setId("max").setCaption("Max").setEditorBinding(grid .getEditor() .getBinder() .forField(new TextField()) .withConverter(new StringToFloatConverter("Enter a value greater than 0")) .withValidator(v -> v>0.0f, "Must be a positive value") .withValidator(v -> v<Constants.MAX_AMT, "Maximum can be "+Constants.MAX_AMT) .bind(AuditParams::getMaxAmt, AuditParams::setMaxAmt));如何在 Vaadin 8 中做到這一點?如何將另一個單元格的值傳遞給驗證器?TIA//--------------------我嘗試在其他兩個驗證器之后將以下驗證器添加到“max”列: .withValidator(v -> v>=((Float)grid.getColumn("min") .getEditorBinding().getField().getValue()), "Incorrect range")這個驗證器永遠不會傳遞任何東西 - 總是發(fā)出錯誤“不正確的范圍”。//--------------------更準確地 - 嘗試了以下驗證器并且它有效。 .withValidator(v -> v>=(Float.parseFloat((String)(grid.getColumn("min") .getEditorBinding().getField().getValue()))), "Incorrect range")但是 - 數(shù)字以格式顯示(,每 3 位數(shù)字之間)并且驗證器試圖將其作為數(shù)字讀取 - 沒有格式。除非我在編輯時去掉那些逗號,否則這仍然會拋出錯誤。會在另一個 Q 中問這個。
添加回答
舉報
0/150
提交
取消