Load SQLite query results into textarea in same View
How can you place results f开发者_StackOverflow中文版rom a SQLite query into a textarea?
The idea is that the user presses the 'next' button and then the textarea displays the text for the next text value in the next record. I believe that I'm passing the values correctly, but when I use trace()
, the values come up as undefined.
What am I doing wrong?
protected function button6_clickHandler(event:MouseEvent):void // pushed --> button
{
var cardNumber:int = parseInt(cardNumberLabel.text);
var newcardid:int = cardNumber+1;
var sqlresult:SQLResult = stmt.getResult();
stmt.sqlConnection = conn;
conn.open(File.applicationStorageDirectory.resolvePath("FlashCards.db"));
stmt.text = "SELECT * FROM cardItems WHERE id = ?";
stmt.parameters[0] = newcardid;
stmt.execute();
trace(sqlresult.data); // value = [object Object]
stext1.text = sqlresult.data.cSide1;
trace(sqlresult.data.cSide1); // value = 'undefined'
cardNumberLabel.text = sqlresult.data.id;
trace(sqlresult.data.id); // value = 'undefined'
conn.close();
moveEffectRPart1.play();
moveEffectRPart1.addEventListener(EffectEvent.EFFECT_END, nextMoveRPart);
}
EDIT: WORKING CODE*
private function nextMoveRPart(event:EffectEvent):void
{
var cardNumber:int = parseInt(cardNumberLabel.text);
stmt.sqlConnection = conn;
conn.open(File.applicationStorageDirectory.resolvePath("FlashCards.db"));
stmt.text = "SELECT * FROM cardItems WHERE id = ?" + "AND id <= MAX(id)";
stmt.parameters[0] = cardNumber+1;
stmt.addEventListener(SQLEvent.RESULT, resultHandlerPrev);
stmt.execute();
conn.close();
moveEffectRPart2.play();
}
function resultHandlerNext(event:SQLEvent):void // result handler next
{
var result:SQLResult = stmt.getResult();
var numResults:int = result.data.length;
for(var i:int = 0; i < numResults; i++)
{
var row:Object = result.data[i];
stext1.text = row.cSide1;
stext2.text = row.cSide2;
cardNumberLabel.text = row.id;
}
}
精彩评论