我是Flex 3和ActionScript的新手。 我想知道如何通过他们的id获取动态文本框的值。
for (var countz:int = 0; countz < questionCount; countz++)
{
hboxtextboxz = new HBox();
txt = new TextInput();
txt.id = countz + "";
hboxtextboxz.addChild(txt);
}
有没有人知道如何从我使用for循环创建的动态文本框中获取值?
答案 0 :(得分:1)
要动态获取Container的所有子项,请使用getChildren()
方法。它将返回UIComponent
个数组,如果它们是TextInput
个实例,则使用text
属性转换它们并获取值。
从HBox中的容器中获取所有textBox的示例代码。
var children:ArrayCollection = textBoxContainer.getChildren();
for(var i:int = 0; i < children.length; i++)
{
var hbox:HBox = HBox(children[i]);
var textBox:TextInput = TextInput( hbox.getChildAt(0));
if(textBox != null)
{
trace(textBox.text);
}
}
以上代码提供的UI结构如下:
<VBox id="textBoxContainer">
<HBox>
<TextInput/>
</HBox>
....
</VBox>
答案 1 :(得分:0)
按值来表示文本框内的文字吗?
如果要在for循环中访问它,只需使用变量名称:
txt.text
否则,如果您在MXML中创建文本框,则可以设置其id参数并使用以下命令访问它: (文本字段id).text
应该为您提供已插入该框中的文字。