2012-10-03 67 views
-1

我在UI中获得了输入文本字段。STRING COMPARSION FLASH AS3

当用户键入“GIRAFFEEE”,“GIRAFEAAA”或“GIRAFFE123”并提交时。得分值应为0.但是它返回1.

如何正确比较区分大小写的字符串?

qns1 = qns1_txt.text.toLowerCase(); 
qns1Ans = "giraffe" 
//.toLowerCase(); 
if (qns1 == qns1Ans) 
{ 
    score = 1; 
} 
else 
{ 
    score = 0; 
} 
+1

请关闭瓶盖。 –

+0

为上限道歉。 – DANLEE

+0

谢谢。现在,请将'trace(qns1)'放在'qns1 = qns1_txt.text.toLowerCase();'string并显示输出之后。 –

回答

0

如果你测试以下:

var correct:String = "giraffe"; 
var userAns:String = "giraffeaaaa"; 

trace(correct == userAns);//false - as expected 

这意味着字符串比较工作:)

我假设你的测试代码是这可能会导致错误的文本框的Change事件积极为用户可能键入部分正确的答案,我认为你应该做一个功能:

function validate() 
{ 
    qns1 = qns1_txt.text.toLowerCase(); 
    qns1Ans = "giraffe" 

    score = 0; 
    if(qns1 == qns1Ans) 
    { 
     score = 1; 
    } 
} 

并在用户点击提交时调用它,你也可以比较字符串的长度,但相等的运算符会做得很好。