Bootstrap-multiselect: Setel ulang acara

Dibuat pada 9 Jun 2018  ·  8Komentar  ·  Sumber: davidstutz/bootstrap-multiselect

Tampaknya tombol reset tidak memicu acara khusus apa pun. Bukankah seharusnya ada event handler onReset atau setidaknya onDeselectAll dipicu?

Komentar yang paling membantu

untuk acara pemicu pada setiap multi-pilih

Menambahkan

function Multiselect(select, options) { ... this.options.onReset = $.proxy(this.options.onReset, this); ... }

````
Multiselect.prototipe = {
default: {
...

 /**
  * Triggered on Reset.
 */
 onReset: function() {

 },

....

}
}
````

buildReset: function() { ... $('a', $resetButton).click($.proxy(function(){ this.clearSelection(); this.options.onReset(); }, this)); ... }

Dan dalam contoh multi-pilihan Anda:

$('#mySelect').multiselect({ .... onReset: function() { console.log('onReset clicked!'); } ... })

Semua 8 komentar

Hai
Sudahkah Anda menemukan solusi?

Ya, tapi itu tidak cantik ( JSFiddle ):

function changeHandler($select) {
    var $selected_options = $select.find('option:selected')

    // and so on
}

$('select').multiselect(
    {
        includeResetOption: true,
        onChange: function () {
            changeHandler(this.$select)
        }
    }
)

$('.multiselect-reset')
    .on(
        'click',
        function () {
            changeHandler(
                $(this).closest('.multiselect-native-select').find('select')
            );
        }
    );

Terima kasih banyak

$('.multiselect-reset').on('click', function () { alert('reset'); });

Semoga harimu menyenangkan.
Christophe Dari Prancis

bagaimana cara menghubungkan acara ke dropdown multi-pilih tertentu jika ada lebih dari satu?

Saya mencoba dengan id dan nama kelas, tetapi tidak berhasil.

untuk acara pemicu pada setiap multi-pilih

Menambahkan

function Multiselect(select, options) { ... this.options.onReset = $.proxy(this.options.onReset, this); ... }

````
Multiselect.prototipe = {
default: {
...

 /**
  * Triggered on Reset.
 */
 onReset: function() {

 },

....

}
}
````

buildReset: function() { ... $('a', $resetButton).click($.proxy(function(){ this.clearSelection(); this.options.onReset(); }, this)); ... }

Dan dalam contoh multi-pilihan Anda:

$('#mySelect').multiselect({ .... onReset: function() { console.log('onReset clicked!'); } ... })

Hai @denniscastro terima kasih banyak atas solusi Anda. bekerja sempurna dengan beberapa dropdown.

untuk acara pemicu pada setiap multi-pilih
Menambahkan

function Multiselect(select, options) {
  ...
  this.options.onReset = $.proxy(this.options.onReset, this);
  ...
}

```
Multiselect.prototipe = {
default: {
...
/**
* Dipicu saat Reset.
*/
onReset: fungsi() {
},
....
}
}


buildReset: fungsi() {
...
$('a', $resetButton).click($.proxy(function(){
this.clearSelection();
this.options.onReset();
}, ini));
...
}

And in your multi-select instance:

$('#pilihansaya').multiselect({
....
onReset: fungsi() {
console.log('onReset diklik!');
}
...
})
```

Terima kasih atas solusi Anda, tetapi saya tidak yakin bagaimana menerapkannya .. atau ke mana semua bagian ini pergi. Apa "...." dalam kode?

Di bawah ini adalah semua kode yang saya miliki untuk dropdown pilihan ganda, yang merupakan bagian terakhir dari contoh Anda. Saya tidak tahu di mana harus meletakkan bagian lainnya. Terima kasih sebelumnya.

$('#kwh,#year').multiselect({
 includeResetOption: true,
 onDropdownHide: function(option, checked, select) {
     <do stuff>
    }
 },
  onChange: function(option, checked, select) {
             <do stuff>
       }
});

@HankLloydRight
Anda harus memodifikasi bootstrap-multiselect.js itu sendiri.
Kemudian Anda merujuk yang itu di halaman html Anda.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat