Chosen: .chosen().change() ne fonctionne pas

Créé le 7 déc. 2011  ·  8Commentaires  ·  Source: harvesthq/chosen

Bonjour, je souhaite mettre à jour les options d'un choix en fonction de la valeur sélectionnée dans un autre, en utilisant AJAX.

J'ai le code AJAX sous-jacent qui fonctionne très bien sur les sélections standard, mais lorsque j'essaie l'un des deux extraits de code suivants pour déclencher un changement, cela ne fonctionne pas.

Je reçois l'alerte () au chargement de la page, mais pas lorsque je modifie la valeur de la sélection avec l'id "catégories"

[code]

$("#categories").chosen().select(alert());
$("#categories").chosen().change(alert());

[/code]

Tous les 8 commentaires

Corrigé en l'enveloppant

$(document).ready(function() {

});

Je vois le même comportement - je l'ai enveloppé dans:

$(document).ready(function() {
    $(".chzn-select").chosen().select(alert());
});

J'utilise jquery 1.7.1

@samkuehn

Sam - avez-vous pu résoudre ce problème ? Je travaille avec maintenant et le code ci-dessous n'enregistre rien dans ma console.

$(document).ready(function () {
    $('#season').chosen().change(function () {
        console.log('asdf');
    });
});

@bkuhl Cela fait un certain temps mais je pense que c'est ce qui a fini par fonctionner pour moi :

$(".chzn-select").chosen().change(function (event) {
    log('change', event, $(event.target).val());
});

cela m'aide à revenir à la version 0.9.5 :)

  var choice, close_link,
                _this = this;
            choice = $('<li />', {
                "class": "search-choice"
            }).html("<span>" + item.html + "</span>");
            if (item.disabled) {
                choice.addClass('search-choice-disabled');
            } else {
                close_link = $('<a />', {
                    "class": 'search-choice-close',
                    'data-option-array-index': item.array_index
                });
                close_link.bind('click.chosen', function(evt) {
                    return _this.choice_destroy_link_click(evt);
                });
                choice.append(close_link);

voulez demander, comment ajouter une classe à <span> ?

Cela fonctionne parfaitement pour moi. Si quelqu'un cherchait une implémentation CoffeeScript, c'est ici :

$('.myselect').chosen().change(
    (event) ->
        console.log "data changed"
)  

j'ai la même chose ici. aucune solution n'a fonctionné pour moi!

Cette page vous a été utile?
0 / 5 - 0 notes