1

こんにちは、php によって取得され、次のような 2 つの非表示テキスト フィールドに表示される一連の単語があります。

タイトル:

Red Apple, Grapes, Green Apple, Orange

ファイル名:

red_apple5, grapes1, green_apple2, orange3

これを次のようなオブジェクトまたは配列に変換できる方法はありますか:

T = {"Red Apple" , "Grapes" , "Green Apple" , "Orange"}

S = {"red_apple5" , "grapes1" , "green_apple2" , "orange3"}

それぞれをリストに追加したい。これを行う方法はありますか?

4

4 に答える 4

2
var array = 'Red Apple, Grapes, Green Apple, Orange'.split(', ');
于 2012-07-05T22:55:41.283 に答える
2

javascriptのsplit()メソッドを使用して、文字列を分割できます。

var str = "Red Apple, Grapes, Green Apple, Orange";
var arr = str.split(', ');
console.log(arr)

これらをリストに追加するには、forEach()を使用して新しく作成された配列をループし、アイテムごとに新しいliを作成する必要があります。次に、liを子要素としてulに追加できます。

var list = document.getElementById("#IdOfYourList")
arr.forEach(function(a) {
    var newLi = document.createElement("li")
    newLi.innerHTML = a;
    list.appendChild(newLi);
});

また、forEachはIE <8ではサポートされていませんが、 https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEachでアレイプロトタイプに実装できることにも注意して ください。

参照: https ://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/split

于 2012-07-05T22:56:56.990 に答える
1

有効なオブジェクトを作成する場合は、次のコードを参照してください。注:説明のために、いくつかの変更が加えられました。

HTML

<div id="output"></div>

jQuery

var titles = 'Red Apple, Grapes, Green Apple, Orange'.split(', ');
var fileNames = 'red_apple5, grapes1, green_apple2, orange3'.split(', ');

var newObject = {};

for(var i=0; i < titles.length; i++){
    newObject [titles[i]] = fileNames[i];
}

$('#output').text(JSON.stringify(newObject));

デモ: http: //jsfiddle.net/GHgsT/

上記のコードはtitles配列をループし、titles[index]値をオブジェクトのプロパティ(キー)としてマップし、対応するfileNames[index]値をプロパティの値としてマップします。

于 2012-07-05T23:07:54.877 に答える
1

.split()を使用します。

var str = "Red Apple, Grapes, Green Apple, Orange";
var array = str.split(", ");
于 2012-07-05T22:56:50.190 に答える