gpt4 book ai didi

java - 从 ListView 中检索 TextField 值

转载 作者:太空宇宙 更新时间:2023-11-04 14:15:23 24 4
gpt4 key购买 nike

我有ListView。其中显示了一些记录。ListView包含Lable和TextField。我在textField(位于ListView中)中输入了一些数据。在Submit()方法中,我试图检索输入的文本字段值。但我没有获取在文本框中输入的值。请让我知道如何从文本字段获取输入的值?下面是我的代码。

public List<StockCountDetail> getItemEntryDetails() {

List<StockCountDetail> myStockCountDetailList = new ArrayList<StockCountDetail>();
List<StockKeepingUnit> mySkuList = MpoBeanFactory.getBean(StockKeepingUnitDAO.class).getByStockLocation(stockLocationModel.getObject());
myStockCountDetailList.clear();
for (StockKeepingUnit mySku : mySkuList) {
StockCountDetail stockCountDetail = new StockCountDetail();
stockCountDetail.setProduct(mySku.getProduct());
myStockCountDetailList.add(stockCountDetail);
}
return myStockCountDetailList;
}
myStockCountDetailList = new ListView<StockCountDetail>("itemList", new PropertyModel<List<StockCountDetail>>(
StockCountEditPage.this, "itemEntryDetails")) {

@Override
protected void populateItem(ListItem<StockCountDetail> aItem) {
aItem.add(new AttributeAppender("class", true, new Model<String>(aItem.getIndex() % 2 == 0 ? "even" : "odd"), " "));
aItem.add(new Label("product", aItem.getModelObject().getProduct().getCode()));
aItem.add(new Label("description", aItem.getModelObject().getProduct().getDescription()));
aItem.add(new CheckBox("skipFlag", new PropertyModel<Boolean>(aItem.getModel(), "skipFlag")));
aItem.add(new TextField<Integer>("count", new PropertyModel<Integer>(aItem.getModel(), "count")));
}
};
myStockCountDetailList.setReuseItems(true);
form.add(myStockCountDetailList);
setOutputMarkupId(true);
AjaxFallbackButton mySave = new AjaxFallbackButton("save", form) {

@Override
protected void onSubmit(AjaxRequestTarget aTarget, Form<?> aForm) {
saveStockCount();
aTarget.addComponent(feedbackPanel);
}

};
form.add(mySave);
private void saveStockCount() {
boolean recordAdded = false;
for (StockCountDetail myStockCount : myStockCountDetailList.getModelObject()) {
if (!myStockCount.isSkipFlag()) {
myStockTransaction.setQuantity(new BigDecimal(myStockCount.getCount()));

}

这里我没有使用 myStockCount.getCount() 获取值,该值是 listview 中文本框的输入值。让我知道如何获取文本框的值?

最佳答案

您的ListView使用一个PropertyModel,它通过调用getItemEntryDetails()获取其值。

如果您调用myStockCountDetailList.getModelObject(),则生成的对象将来自this.getItemEntryDetails(),它将返回一个新的List带有新的 StockCountDetail

为了保留该值,您可以将列表存储在字段中。

关于java - 从 ListView 中检索 TextField 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27814450/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com