我正在尝试检查用户在XML文件的动态文本框中输入的文本,因此如果用户输入它跟踪累积奖金并且存储的数据没有存储,这是我到目前为止但不能得到的它工作,任何人有任何想法?舞台上的所有内容都是一个名为userID的动态文本框和一个名为idBtn的按钮,用于检查,谢谢
编辑:我改变了它,我无法工作的是用户输入的文本和xml中的内容之间的比较,if循环总是贯穿,即使是真的, import flash.display.MovieClip;
import flash.text.TextField;
var xmlloader:URLLoader = new URLLoader();
var xmlreq:URLRequest = new URLRequest("users.xml");
xmlloader.load(xmlreq);
xmlloader.addEventListener(Event.COMPLETE, convertdata);
function convertdata(event:Event)
{
var xmlinfo:XML = new XML(event.target.data);
var postedlist:XMLList = xmlinfo.user;
var totallist:Number = postedlist.length();
trace(totallist);
for(var i:int=0 ; i < totallist ; i++)
{
trace("id_no[i] before lowered " + xmlinfo.user.id_no[i])
xmlinfo.user.id_no[i] = xmlinfo.user.id_no[i].toLowerCase();
trace("id_no[i] after lowered " + xmlinfo.user.id_no[i])
}
function checkUser(event:MouseEvent):void
{
for(var i:int=0 ; i < totallist ; i++)
{
var enteredID:String = userId.text
enteredID = enteredID.toLowerCase();
trace("before if "+ xmlinfo.user.id_no[i] +" and " + enteredID)
if (xmlinfo.user.id_no[i]==enteredID)
{
trace("jackpot");
}
else
{
trace("nope");
}
}
}
idBtn.addEventListener(MouseEvent.MOUSE_UP, checkUser);
}
我的xml只是
<root>
<user>
<id_no>a</id_no>
<username>Jane Doe</username>
<banned>-1</banned>
<equip_out>-1</equip_out>
</user>
</root>
我的输出是:
1
id_no[i] before lowered a
id_no[i] after lowered a
在文本框中输入注释
before if a and
nope
在文本框中输入q
before if a and q
nope
输入文本框(这是我想要返回累积奖金跟踪)
before if a and a
nope
答案 0 :(得分:1)
我认为您正在将XML与String进行比较。
试试这个:
if (xmlinfo.user.id_no[i].toString()==enteredID)
{
trace("jackpot");
}
else
{
trace("nope");
}