2014-01-22 7 views
1

Я использую Eric Hynds jQuery MultiSelect Widget, который заполняется из файла javascript. Я могу динамически добавить флажок, установив флажок в раскрывающемся списке. Я пытаюсь установить новый флажок и «значение» флажка выпадающего списка, чтобы он отображался в поле «Основной», если он также проверен. Чтобы проиллюстрировать с комментариями внутрь: http://jsfiddle.net/3u7Xj/12/Динамическое добавление флажков из виджета пользовательского интерфейса jQuery multi-select

Ссылки:

<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 /> 

Populating раскрывающийся виджет из 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(''); 
}); 

Любая помощь будет принята с благодарностью

ответ

1

Надеемся, что это даст вам какое-то направление на том, как это можно сделать.

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/

+0

Спасибо, это было очень полезно. Я продолжу работать с ним и посмотрю, что произойдет. – user3191137

Смежные вопросы