2

選択ボックスに選択したプラグインを使用しています。私はajaxリクエストでこれらの両方のボックスを交換しています。チェックボックスが来たら事前に入力してほしい。私は何かを試みましたが、失敗します。私はこれのドキュメントを読みましたが、達成できません。これが私がドキュメントを読んだ後に試したことです。ajaxの応答が来たら、私はこれらのことをしています。

var city = $('#hdnCity').val();
//**Ajax Request Goes and the response is here**//
$('#searchParams').html(responseText);
var value = $("#favCities1 option:contains("+city+")").attr('selected', 'selected');
$("#chzn-select").val(value).trigger("liszt:updated");

私はこれを達成することができません。ヘルパーはかなりです。前もって感謝します!!!

4

3 に答える 3

4

問題は最後の行にあります:$("#chzn-select").val(value).trigger("liszt:updated");

$("#chzn-select").val(value)jQueryオブジェクトのみを返し、<select>要素は返さないため、分離する必要があります。liszt:updatedしたがって、Chosenは、をリッスンしているだけなので、イベントをピックアップできません<select>

したがって、これを行う必要があります。

$("#chzn-select").val(city);
$("#chzn-select").trigger("liszt:updated");

実例を参照してください:http://jsfiddle.net/amyamy86/qQCw8/

于 2013-03-27T05:01:57.187 に答える
3

それ以上の情報がない場合は、ajax応答の処理方法に問題があると思います

の更新はsearchParams、ajax成功コールバック内で発生する必要があります

var city = $('#hdnCity').val();

$.ajax({
    url: '',
    ...
}).done(function(responseText){
    //**Ajax Request Goes and the response is here**//
    $('#searchParams').html(responseText);
    var value = $("#favCities1 option:contains("+city+")").attr('selected', 'selected').val();
    $("#chzn-select").val(value).trigger("liszt:updated");
})
于 2013-03-27T05:19:06.157 に答える
0

Chromeでは、今すぐ別のイベントhttp://harvesthq.github.io/chosen/を起動する必要があります。このイベントを発生させないと、複数選択ボックスは更新されません。

$('#chzn-select').trigger('chosen:updated')

このjsfiddle、http://jsfiddle.net/LjtVa/で実際に動作しているのを見ることができます

于 2013-09-23T23:18:29.710 に答える