我正在动态创建一个TextBox,我从服务器获取值,值可以是5,有时候是10等等,所以我创建的文本框中没有不同的颜色..
创建所有文本框后。
页面中有一个更新按钮,当我点击此更新按钮时,无论用户可能在任何textBox中输入了什么更改,都应该去服务器..我无法做到.. < / p>
下面是我创建textBoxes
的代码 public void fetchData(){
public void onSuccess(ArrayList<Details> result) {
for(int i =0;i<result.size();i++){
name = new TextBox();
name.setText(result.get(i).getName());
verticalPanel.add(name);
namesList.add(name);
}}
假设此时名称值为:admin 现在用户访问用户界面并将管理员更改为adminNew 然后单击“更新”按钮
这是我在更新Button上所做的事情
public void Update(){
for(int i =0;i<namesList.size(); i++){
String updatedNanme = namesList.get(i).getText());
}
}
现在,我如何在updatedName字段中获取用户从UI(即adminNew)更改的更新名称。 现在我得到了从fetchData方法获得的旧名称(即admin)。
谢谢
答案 0 :(得分:0)
您应该通过调用getText()而不是“旧值”来获取文本框的值。我认为你的文本框列表有问题。也许两次实例化文本框! 我建议你调试你的代码,在实例化文本框时和更新发生时设置一个断点。看看两者是否是同一个实例(例如,如果你使用eclipse观察变量,变量的id显示在它前面。这是VM的对象id。检查实例化的文本框的id是否相同作为文本框的id,你从中获得价值
答案 1 :(得分:0)
是否可以使用用户条目覆盖文本框的内容?您的更新方法将始终将updatedNanme设置为namesList数组中最后一个元素的内容。 你如何访问updatedNanme字符串?该字符串仅在for循环中可用?