【问题标题】:How to retrieve all the selected items from multi-select dropdown box - jQuery mobile如何从多选下拉框中检索所有选定的项目 - jQuery mobile
【发布时间】:2011-06-24 21:11:30
【问题描述】:

我有 2 个多选下拉框(ddb)(我使用 jQuery mobile)。一旦用户从 ddb1 中选择项目,根据他的选择,我需要填充 ddb2。我在 ddb1 中使用了 jQuery.change()。但是我面临的问题是每次用户从 ddb1 中选择/取消选择项目时都会调用 onChange()(我知道这是预期的行为),而不是在整个选择结束时调用。

我想做的是 - 一旦 ddb1 失去焦点,我需要从 ddb1 获取所有选定的值并处理它以填充 ddb2。但是我没有找到当用户完成他的选择时触发的事件ddb1.我试过 ddb1.blur() 和 ddb2.focus()。没有帮助。对此有什么想法吗?

代码如下:

<script type="text/javascript">
    $("#ddb1").blur(function(event) {
       $("#ddb2").empty(); 
       var ddb1_val = $("#ddb1 option:selected").val();


       var url = "construct url based on ddb1_val"

       $.getJSON(url,function(data) {
          //do something
       });
    });
</script>

【问题讨论】:

    标签: jquery drop-down-menu jquery-mobile onchange multi-select


    【解决方案1】:

    .blur() 在选择倍数上的工作方式与您期望的一样。如果它对您不起作用,则您的代码中一定有某种错误。

    如果您发布代码,有人可能会帮助您,但目前我只能说.blur() 是正确的选择。

    【讨论】:

    • 您发布的所有内容都看起来不合适,但很明显您已经编辑了一些代码。如果 blur 的函数内部有任何 javascript 错误,它将不会响应该事件。因此,请检查您的实际代码是否有错误,尤其是愚蠢的东西,例如缺少分号、对象定义的最后一项上的逗号等。
    【解决方案2】:

    您基本上应该有一个按钮,它将从 dropdown1 中获取所有选定的选项并将其添加到 dropdown2。或者您可以在单击选项时立即添加它。

    【讨论】:

    • sangoli - 我宁愿没有按钮。如果有,那么我可以使用 onclick() 方法填充数据
    猜你喜欢
    • 2013-07-23
    • 2014-07-17
    • 1970-01-01
    • 2018-12-27
    • 1970-01-01
    • 2019-10-13
    • 1970-01-01
    • 1970-01-01
    • 2013-09-23
    相关资源
    最近更新 更多