0

SQLITE データベースから取得した「名前」と「ニックネーム」の各値を配列に入力し、アラートで表示する必要があります。

これは、titanium appcelerator で JavaScript で記述されたプロジェクト用です。

これはコードです:

var fightersRS = db.execute('SELECT * FROM fighters');

 var setFighters = [];

while (fightersRS.isValidRow())
{
  var name = fightersRS.fieldByName('name');
  var nickname = fightersRS.fieldByName('nickname');

      setFighters.push = {
             name: name,
             nickname: nickname           
             };

     fightersRS.next();
}
alert(setFighters);

アイデアは、アラートがすべてのカンマ区切りの値を表示することです。次に例を示します。

「モハメド・アリ、ロッキー・バルボア、テンシンハンなど……」

どうすればそれができますか?私のコードは動作しません。

4

2 に答える 2

1

次のようにコードを変更します

var fightersRS = db.execute('SELECT * FROM fighters');
var setFighters = [];
while (fightersRS.isValidRow())
{
  var name = fightersRS.fieldByName('name');
  var nickname = fightersRS.fieldByName('nickname');

      setFighters.push({"name": name, "nickname": nickname}); //This is the correct syntax for pushing an element to the array

     fightersRS.next();
}

for loop次のように a を使用して要素を表示できます

for(var i=0; i <setFighters.length;i++){
    alert("Name = " + setFighters[index].name + " Nickname= " + setFighters[index].nickname);
}

名前をコンマで表示したい場合は、次のことを試してください。

var fightersRS = db.execute('SELECT * FROM fighters');
var setFighters = [];
while (fightersRS.isValidRow())
{
    var name = fightersRS.fieldByName('name');

    setFighters.push(name);

    fightersRS.next();
}

var fighters = setFighters.join(",");//Joining the array elements with comma
alert(fighters); //Will display all names with a comma

JavaScriptの結合方法を見てください

于 2013-09-06T09:22:34.840 に答える
-1

for ループを使用するか、while ループ内でのみ、すべての値にカンマを追加した文字列を作成します。

コンマを使用して配列からすべてのデータを取得することはできません。スタック オーバー フローの連想配列の例を次に示します。独自の for ループを作成するか、作成中の while ループを使用できます。

連想配列とデータの取得

ありがとう

于 2013-09-06T09:15:51.837 に答える