【问题标题】:Jquery multiselect plugin - print selected in divJquery 多选插件 - 在 div 中选择打印
【发布时间】:2012-05-29 15:14:59
【问题描述】:

我正在使用 jquery 多选插件,如果选择了一个选项,我希望它立即打印在选择框下方的 div 中。

Link to Plugin site

我在插件网站上看到过这个,但不知道如何实现它:

检索所有选定的值?

最简单的方法是在选择框上调用 val():

var values = $("select").val();

同样可以使用多选 API 来完成。调用 getChecked 方法并映射一个新数组:

var array_of_checked_values =
$("select").multiselect("getChecked").map(function(){    return
this.value;  }).get();

任何帮助/指导将不胜感激。 提前致谢

我的代码:

echo '<select name="tutor[]" id="tutor" multiple="multiple" size="5" class="required" title="Select Staff">';
$staff = get_records("user", "deleted", "0", "lastname ASC", "id,firstname,lastname,idnumber");
$sdenrolments=array($entry->enrolments);
$enrolled_staff = explode(",", $entry->enrolments);

foreach($staff as $tutor){  
if($tutor->id>1){
echo '<option value="'.$tutor->id.'"';
if(in_array($tutor->id, $enrolled_staff)) {echo 'selected="selected"';}
echo '>'.$tutor->lastname.' '.$tutor->firstname.'</option>';
}
}

【问题讨论】:

  • 您能好心点我们到插件站点吗?
  • @adrian:将其添加到我的问题中,干杯

标签: jquery multi-select


【解决方案1】:

您可以使用.multiselect("getChecked") 获取选中的项目。这将返回一个数组,然后您可以循环并从中提取各个值:

var output = [];

$.each( $("select").multiselect("getChecked"), function(){
    output.push( $(this).attr("title") );
});

$("#myDiv").html( output.join(', ') );

如果您希望它实时更新,您可以绑定到点击事件:

$("select").multiselect({
   click: function() {
      var output = [];
      $.each( $("select").multiselect("getChecked"), function(){
         output.push( $(this).attr("title") );
      });
      $("#myDiv").html( output.join(', ') );
   }
});

【讨论】:

  • 这太棒了,谢谢。虽然存在一个问题,但我使用用户 ID 作为每个选项的值,因为它会保存到数据库中。但我想获取用户名。有任何想法吗?生病用代码更新我的问题。
  • @Codded 看起来这个插件是通过title属性提供选项的文本的。查看我的最新更新。
  • 没关系,我已经管理了,我使用了标题 output.push(this.title);另一个问题,我可以在每个选择之间添加一个
    ,如果我选择一个,它可以在不刷新页面的情况下更新 div 吗?

  • 排序 ---- $("#myDiv").html( output.join('
    ') );
  • @Codded 您可以通过绑定click 事件来响应每次点击。我已经更新了上面的代码。
猜你喜欢
  • 2015-07-21
  • 2011-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-13
  • 2014-07-23
相关资源
最近更新 更多