1

過去にこれについて質問があったので、これは機能していましたが、コードを失ったので、質問に戻って機能させようとしましたが、現在は機能していません。 ..

なぜこれが機能しなくなったのか、誰か助けてください。

コード

var valArr = [3, 4];
size = valArr.length;
for (i = 0; i < size; i++) {
    $("#secondary_group option[value='" + valArr[i] + "']").
                                            attr("selected", 1);
    $("#secondary_group").multiselect("refresh");
}

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

それがすることになっていることは、その値に基づいてオプションを選択することです、基本的に、あなたはjsfiddleからコードを読んでそれを理解することができます。

私はJavaScript/jQueryの初心者なので、完全には理解していません...

4

1 に答える 1

1
var valArr = [3, 4];
size = valArr.length; // detect array length
// looping over array
for (i = 0; i < size; i++) {

    // $("#secondary_group option[value='" + valArr[i] + "']")
    // select the option with value match with the valArr
    // from the select with id=secondary_group and if match found
    // .attr("selected", 1);  make that option as default selected

    $("#secondary_group option[value='" + valArr[i] + "']")
                                            .attr("selected", 1);
}

// after selecting the options
// refresh the select using below code
// And this code should belong outside of
// above loop, because
// refreshing within loop will only 
// select last matched element
// not all matched

$("#secondary_group").multiselect("refresh");

デモ

于 2012-06-25T03:57:14.307 に答える