0

このように定式化されている文字列があり Item:ShortName:Tax、さらに項目を追加すると、、のように文字列に追加され、Item:ShortName:Tax_Item2:ShortName2:Tax2さらに1つ追加さItem:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3れます。私が知りたいのは、アイテムがリストに存在するかどうか、たとえば、、shirtまたはをチェックする必要があるということですjeans。コロンで区切ると、配列の最初になります。

これを使用しました。

var list = "Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3_Item4:ShortName4:Tax4";

$(document).ready(function () {
    var arg = 'Item2';
    findItem(arg);
    fucntion findItem(argument) {
        $.each(list.split('_'), function () {
            if (this.split(':')[0] == arg) {
                alert('Item found!');
            }
        };
        };

ただし、Item2リストにはありますが、アラートは表示されません。
明確でない場合は、分割されたこのリスト_に配列が含まれ(ご覧のとおり)、で区切られた各配列にはが:含まれていますItemname, ItemShortName, TaxOnItem。これらすべての小さな配列で、を含む最初の配列をチェックしてItemName、特定の配列があるかどうかを確認する必要があります。アイテムが存在するかどうか!これどうやってするの?

4

3 に答える 3

1

コードでエラーが発生したことに気付きました。

于 2012-09-11T10:43:26.407 に答える
0

ここ:コードを少し再フォーマットし直しました。これを試して:

var list = "Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3_Item4:ShortName4:Tax4";

function findItem(argument) {
    list.split("_").forEach(function(subList){
        if(subList.split(":")[0] == argument) { 
             alert("Item found!");
         }
    });
};

$(document).ready(function () {
    findItem("Item2");
};
于 2012-09-11T10:43:43.850 に答える
0

あなたはいくつか欠けている{だけ(でなく、タイプミスもあります。コンソール ログは、これらすべてを示しています。

$(document).ready(function () {

    var list = "Item:ShortName:Tax_Item2:ShortName2:Tax2_Item3:ShortName3:Tax3_Item4:ShortName4:Tax4";
    var arg = 'Item2';
    findItem(arg);

    function findItem(argument) {
        $.each(list.split('_'), function () {
            if (this.split(':')[0] == arg) {
                alert('Item found!');
            }
        });
}

}​);​
于 2012-09-11T10:44:37.733 に答える