【问题标题】:How to bring a dropdown (Chosen) with selected value on page loads.?如何在页面加载时带来带有选定值的下拉列表(选择)。?
【发布时间】:2013-03-27 04:47:50
【问题描述】:

我将Chosen plugin 用于选择框。我正在根据 ajax 请求替换这两个框。我希望复选框在出现时预先填写。我尝试了一些东西,但它失败了。我读了这个的documentation 并且无法完成。这是我在阅读文档后尝试过的。一旦 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");

我无法做到这一点。帮手是可观的。提前谢谢你!!!

【问题讨论】:

  • 你也可以分享ajax请求吗

标签: javascript jquery ajax jquery-chosen


【解决方案1】:

问题出在最后一行:$("#chzn-select").val(value).trigger("liszt:updated");

你必须分开,因为$("#chzn-select").val(value) 只返回 jQuery 对象,而不是 <select> 元素。因此,Chosen 无法接收 liszt:updated 事件,因为它只监听 <select>

所以你必须这样做:

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

查看工作示例:http://jsfiddle.net/amyamy86/qQCw8/

【讨论】:

  • 关于你的小提琴,你分配了坦贾武尔,选择的值是钦奈。你注意到了吗?
  • @VigneshGopalakrishnan 对不起,我分配了错误的变量,应该是:$("#chzn-select").val(city)
  • 虽然没用。请用小提琴检查。我只是对城市进行了硬编码,尽管它无法正常工作。
  • 谢谢它工作正常。在多种情况下,这些值将如何影响?
  • @VigneshGopalakrishnan 要设置多个值,只需将 Array 传入.val()。所以$(".chzn-select").val(["Thanjavor","Bangalore"]) 会在多选中同时选择“Thanjavor”和“Bangalore”。但是,single select 只会使用最后一个值设置,因此它将是“Bangalore”。
【解决方案2】:

在没有任何进一步信息的情况下,我想这是您如何处理 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");
})

【讨论】:

  • 感谢 Arun P Johny 先生的努力。它也适合我。
【解决方案3】:

Chrome 要求您现在触发一个不同的事件,http://harvesthq.github.io/chosen/。如果不触发此事件,多选框将不会更新。

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

你可以通过这个 jsfiddle 看到它,http://jsfiddle.net/LjtVa/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-19
    • 2011-02-07
    • 1970-01-01
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 2013-03-11
    相关资源
    最近更新 更多