1

現在、次のような関数があります。

function hidearray() {
    $('#one, #two, #three').hide();
}

これらの ID を 1 つの配列に入れたいのですが、次のようになります。

var myArray['one', 'two', 'three'];

そして、関数 hidearray() 内でその配列を非表示にします。このようになると思いましたが、間違った方向に進んでいると思います (以下のステートメントの # を無視したこともわかっています)。

$(.each(myArray)).hide();

解決策はおそらく簡単なので、回答してくれたすべての人に感謝します!

4

7 に答える 7

6

jQuery セレクターは単なる文字列なので、配列を結合して文字列を作成します。

$('#' + myArray.join(', #')).hide();

フィドル

于 2013-06-16T20:52:38.150 に答える
3

私は使用しますgetElementById。のサポートを想定Array.map:

var myArray = ['one', 'two', 'three'];

$(myArray.map(document.getElementById, document)).hide();
于 2013-06-16T20:52:28.287 に答える
1
for(var i = 0; i < myArray.length; i++) {
     $(myArray[i]).hide();
 }
于 2013-06-16T20:54:33.907 に答える
0

配列を非表示にしますか??。私はあなたが意味すると思います。jqueryを使用して配列内にIDを配置することにより、要素を非表示にする方法

あなたはこれを行うことができます。

array = ['#id_tiempo_inicio_0', '#id_tiempo_fin_0', '#id_evento']

$.each(array,function(i, v){
   $(v).hide();
});
于 2013-06-16T20:56:45.947 に答える
0
var myArray['one', 'two', 'three'];
$.each(myArray,function(i,v){
   $('#'+v).hide();
});

デモ--> http://jsfiddle.net/Utg7p/

于 2013-06-16T20:52:37.090 に答える
0

jsFiddle Demo

を使用eachし、配列を最初のパラメーターとして渡します。2 番目のパラメーターは、現在のアイテムを操作するためのコールバックになります。

var arr = [];
arr.push("#one");
arr.push("#two");
arr.push("#three");
$.each(arr,function(){
 $(""+this).hide();
});
于 2013-06-16T20:54:44.243 に答える
-1

これでうまくいきます。

html

<div id="one">One</div>
<div id="two">Two</div>
<div id="three">Three</div>
<button id="button">Hide</button>

JavaScript

jQuery(document).ready(function() {
    var mrHide = ['#one', "#two", "#three"];
    jQuery("button#button").click(function() {
        jQuery.each(mrHide, function(index, value) {
            jQuery(value).hide();
        });
    });
});

http://jsfiddle.net/maxja/LUf4y/2/

于 2013-06-16T21:01:58.400 に答える