我需要做一个If / Else条件。
我使用Adobe Flash制作表单,在第一页上,我需要制作一个登录表单。我想输入文本,但是必须填写输入文本。如果输入文本为空,则我想提醒是否必须填写表格。在我的想法中,我有一个名为nama.text
的输入文本,在输入文本的底部,有一个名为next.bt
的按钮。然后,将动态文本“ alert.text”放在按钮的底部。
我的问题:
我想要的是,如果用户按下按钮时输入的文本已填满,则用户将直接转到下一帧。但是,如果输入文本为空,我想发出警报“必须填写Nama”,并使用户停留在此页面中,直到Nama.text被填充之前,不能转到下一帧。我为我的英语感到很抱歉,但我希望这里的每个人都能理解我的问题。
答案 0 :(得分:1)
”“我想要的,如果用户按下按钮并输入了填充文本,则用户 将直接转到下一帧。但是,如果输入文本为空,我 想要发出警报“必须填充纳马”并让用户停留在此 页面,直到
Nama.text
填满后才能转到下一帧。
(1)永远不要将.
(例如:句号)用作变量名的一部分。句号对AS3编译器意味着其他意义。通常,它表示“属于此变量的属性” 。也许重命名为txt_Nama
?
(2)您可以检查AS3 manual for Textfield options。其中之一是名为.length
的属性。这告诉您文本字段中存在多少个字符。
因此,在用于处理Next
按钮的点击功能中,
if (txt_Nama.length <= 1) //if smaller or equal to 1
{
//if Smaller-than or Equal-to 1 then not enough chars typed
showTheAlert(); //tell AS3 to do this function
}
else
{
//if larger than 1 then something was typed
mc_Pages.gotoAndStop(2); //tells content MovieClip go to its frame 2
}
然后创建一个单独的函数来处理警报的显示(不要将此函数放在另一个函数的内部)
function showTheAlert() :void
{
trace("No name was typed. Try again...");
//# Do something here like make some "warning" MClip visible
//maybe... mc_Alert.addChild;
//or... mc_Alert.visible = true;
}
(3)我建议您创建一个MovieClip对象来保存您的内容或页面。 MClip具有自己的时间轴,并转到舞台等自身的框架。如果您告诉舞台移至另一帧,则您的代码可能无法正常工作
someMC.gotoAndStop(5); //# Correct... tells MovieClip to move frames. Code works because and MovieClip are on same Stage frame.
gotoAndStop(5); //# Wrong... tells Stage to move frames. Code only works on other frame where it is typed.