javascript - 从多选 jQuery UI 小部件动态添加复选框

标签 javascript jquery jquery-ui multi-select

我正在使用Eric Hynds jQuery MultiSelect Widget这是从 javascript 文件填充的。我可以通过从下拉列表中进行检查来动态添加复选框。我正在尝试附加新的复选框和下拉复选框的“值”,以显示在“主”复选框下(如果也选中了该复选框)。为了帮助说明里面的评论:http://jsfiddle.net/3u7Xj/12/

引用文献:

<select id="select" multiple="multiple" class="multiselect">
</select>
<input type="checkbox" name="chkMain1" value="Main1" id="Main1"><label for="Main1">Main1</label><br />
<input type="checkbox" name="chkMain2" value="Main2" id="Main2"><label for="Main2">Main2</label><br />
<input type="checkbox" name="chkMain3" value="Main3" id="Main3"><label for="Main3">Main3</label><br />

从 js 文件填充下拉小部件:

var MYdata=[{
    "Value":"1",
    "ValueText":"name1"
}
,{
    "Value":"2",
    "ValueText":"name2"
}
,{
    "Value":"3",
    "ValueText":"name3"
}];    
$('#select').html(function(){
    return $.map(MYdata, function(v) {
        return "<option id='"+ v.Value +"'>" + v.Value + "-" + v.ValueText +"</option>";
    }).join('');
});

任何帮助将不胜感激

最佳答案

希望这能为您提供一些如何完成的指导..

click: function (event, ui) {
            var lbl = ui.value;
            if(ui.checked){
                var ctrl = '<input type="checkbox" name="chk" checked="checked" class="chk" id="'+lbl+'">';
                $("[id^=Main]:checked").each(function(){
                    $(this).nextAll('.holder:first').append('<div>'+ctrl+lbl+'</div>');    
                });
            }
            else {
                $("[id^=Main]:checked").each(function(){
                    $(this).nextAll('.holder:first').find('div input[id='+lbl+']').parent().remove();
                });
            }

            if (ui.checked && $(".multiselect").children(":checked").length >= 5) {
                return false;
            }

        }

示例:

http://jsfiddle.net/trevordowdle/3u7Xj/14/

关于javascript - 从多选 jQuery UI 小部件动态添加复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21291813/

相关文章:

javascript - 可选的枚举参数在提供时为假

javascript - 如何对典型的 JSON 使用 ng-repeat?

javascript - 一次性转换所有类

javascript - 如何在 Jquery Datatable 中翻阅所有页面并返回

javascript - 如何设置 jquery 可拖动的边距?

jquery - jtable "Add new record"css 不显示

javascript - 查找特定 td 的第一个单词并在其他地方复制

javascript - 选取已在 Canvas 中绘制的图像

javascript - 循环结束后重启 jQuery.each()

ruby-on-rails - 尝试更改数据表的设计外观时无法在 Rails 4 中找到文件 'jquery.ui.core'