0
これまでの投稿から助けを得て助けてくれましたが、これを動作させることができません。すべてのgroup2配列要素がgroup1配列に存在するかどうかをテストしたい。現時点では、私は自分が望むものとは反対の結果を得ています。私は '比較配列'のjQueryセクションでコードを逆にしようとしましたが、運はありません。例示的な結果は、以下の列に示されている。 https://jsfiddle.net/v82pfx2w/。誰もこれに光を当てることができますか?配列の要素を別の配列内でテストする
group1: group1: group1:
Luxembourg Greece Greece
Netherlands Netherlands Netherlands
Belgium Luxembourg Luxembourg
Belgium Belgium
group2
Netherlands group2 group2
Greece Netherlands Luxembourg
Luxembourg Luxembourg Belgium
Belgium Belgium
NO MATCH YES MATCH YES MATCH
https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js
<div id="containerStore">
<div class='AggregCountriesBNLUX'>
<label>Netherlands</label>
<label>Greece</label>
<label>Luxembourg</label>
<label>Belgium</label>
</div>
<div class='AggregCountriesWEur'>
<label>Netherlands</label>
<label>Luxembourg</label>
<label>Belgium</label>
</div>
<div class='AggregCountriesWEur'>
<label>Luxembourg</label>
<label>Belgium</label>
</div>
</div>
var group1 = [];
group1 = ['Luxembourg', 'Netherlands', 'Belgium']
$('#containerStore div[class^="AggregCountries"]').each(function(i, obj) {
group2 = $(this).map(function() {
return $.trim($(this).text());
})
.get();
group2 = group2.join();
// compare arrays:
var compareGroups = group1.every(function(val) {
return group2.indexOf(val) >= 0;
})
alert(compareGroups);
});
ありがとうございますが、「group2.everyは関数ではありません」というエラーが表示されます。 – Silverburch
@Silverburchはフィドルで答えを更新しました。 – adiga
ああ、そういうわけで私はラベルを '見つけられませんでした。あなたの助けが大いに感謝! – Silverburch