我正在使用MagicSuggest 在一种形式。该插件工作得很好,但我希望能够通过点击按钮为其添加数据。
这是我在下面尝试过的,它将数据添加到它,但如果我点击输入,数据就会消失。
HTML
<div class="qa-suggested-profiles">
<a href="#/" data-name="John Doe" class="btn btn-sm tag-profile-btn">Add this profile</a>
</div>
JS
$('.qa-suggested-profiles').on('click', '.btn', function(){
var profileName = $(this).data('name');
$('#tag-business .ms-sel-ctn').prepend('<div class="ms-sel-item ">' + profileName + '<span class="ms-close-btn"></span></div>');
$('#tag-business .ms-sel-ctn input').attr('placeholder', '').width('auto');
$('#tag-business .ms-sel-ctn div').prepend('<input type="hidden" value="1">');
});
答案 0 :(得分:0)
我在文档中找到了完成此任务的内容。转到http://nicolasbize.com/magicsuggest/doc.html并搜索setValue([array] ids)
请参阅以下示例:
var ms = $('#ms-setValue').magicSuggest({
data: 'data.json'
});
ms.setValue([2, 3, 4]);
以下是我使用的最终代码,我还添加了removeFromSelection
来清除每个按钮上的选择
$('.qa-suggested-profiles').on('click', '.btn', function(){
var profileName = $(this).data('name');
var ms = $('#tag-business').magicSuggest({
data: '/data/business-profiles.json'
});
// remove current value
ms.removeFromSelection(ms.getSelection(), true);
// add selected value
ms.setValue([profileName]);
});