“If”要求AS3结束时的额外“空间”

时间:2016-09-12 16:07:35

标签: actionscript-3 flash conditional

我的代码有效,除非它需要并在末尾添加额外的“空格”以便按钮激活?有任何想法吗?我显然在代码中没有用户名或密码末尾的空格。这种情况发生在另一个框架上,我在网址中有用户类型,我将条件设置为==“md.website.com”,但它需要“md.website.com”(最后的额外空间) )以便按钮激活。

此代码期待“AB1234”和“newuser”而不是“AB1234”“newuser”,就像我需要的那样,我告诉它...我很抱歉,我是AS3的新手并且尽我所能学习,这个网站为我已经获得的所有帮助而震撼!

username_txt.addEventListener(TextEvent.TEXT_INPUT,paramChanged3);
password_txt.addEventListener(TextEvent.TEXT_INPUT,paramChanged3);

next_btn.enabled = false;
next_btn.alpha = .5;

function paramChanged3(event:TextEvent):void
{
    if (username_txt.text == "AB1234" && password_txt.text == "newuser" )
    {
        trace("go")
        next_btn2.enabled = true;
        next_btn2.alpha = 1;
        next_btn2.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndPlay_20)

    }
    else
    {
        next_btn2.enabled = false;
        next_btn2.alpha = .5;

    }
}

function fl_ClickToGoToAndPlay_20(event:MouseEvent):void
{
gotoAndPlay(20);
}

2 个答案:

答案 0 :(得分:1)

问题是TextEvent.TEXT_INPUT在实际更新文本字段之前触发。请尝试使用Event.CHANGE代替(或使用两个TextEvent.TEXT_INPUT回调并在每个回调中附加event.text的输入字符。)

答案 1 :(得分:0)

我不知道为什么AS3需要额外的空间,但我删除了确切的条件,并且只做了最小字符数。当然,只要符合最低要求,受训者就可以输入任何内容,但实际的用户名和密码无关紧要,无论如何都是模拟,这里是带字符数的代码....

username_txt.addEventListener(TextEvent.TEXT_INPUT,paramChanged3);
password_txt.addEventListener(TextEvent.TEXT_INPUT,paramChanged3);

next_btn.enabled = false;
next_btn.alpha = .5;

function paramChanged3(event:TextEvent):void
{
    if (username_txt.text != "" && username_txt.length >=5 && 
password_txt.text != "" && password_txt.length >=6)
    {
        trace("go")
        next_btn2.enabled = true;
        next_btn2.alpha = 1;
        next_btn2.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndPlay_20)

    }
    else
    {
        next_btn2.enabled = false;
        next_btn2.alpha = .5;

    }
}

function fl_ClickToGoToAndPlay_20(event:MouseEvent):void
{
gotoAndPlay(20);
}