我希望用户在文本字段(INPUTFIELD)中填写介于1-350之间的数字。通过XML,我希望在另一个文本字段(OUTPUTFIELD)中返回一个字符串。
我得到了99%的服务,但是在用户填写数字0或超过350之后,我想在OUTPUTFIELD中返回一条消息。
--我不能让它起作用,我得到了这样的信息:
TypeError: Error #2007: Parameter text must be non-null.
at flash.text::TextField/set text()
at MethodInfo-2()我的代码如下所示:
this.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
function keyDownHandler(event : KeyboardEvent):void {
if (event.keyCode == Keyboard.ENTER) {
if (inputField.text > "0") {
outputField.text = xmlData.prefix_list.country[Number(inputField.text)];
outputField.setTextFormat(myTextFormat);
} else {
if (inputField.text > "350") {
outputField.text = "DOES NOT EXIST";
outputField.setTextFormat(myTextFormat);
}
}
}
}我在"if“条件中尝试了许多选项,例如,只有几个选项:
if (inputField.text > "0" || inputField.text < "350")
if (inputField.text >= 0 && inputField.text =< 350)
if (inputField.text >= "0" && inputField.text =< "350")“否则”条件也是如此。
} else {
if (inputField.text > "350") {也许有人能给我指明正确的方向。
发布于 2012-09-19 21:01:05
if (int(inputField.text) > 0 && int(inputField.text) < 350) {
outputField.text = xmlData.prefix_list.country[Number(inputField.text)];
outputField.setTextFormat(myTextFormat);
} else {
outputField.text = "DOES NOT EXIST";
outputField.setTextFormat(myTextFormat);
}如果使用整数,则必须将值转换为int。
在AS3中,很容易在类型之间进行转换。下面是如何将字符串转换为数字http://www.trainingtutorials101.com/2011/01/actionscript-3-convert-strings-to.html的教程
https://stackoverflow.com/questions/12502685
复制相似问题