我试图根据用户选择的选项更新输入字段的值。所以,如果他们选择“教育”选项,它会将其添加到输入值字段。如果他们再次选择相同的选项,它会删除。他们可以根据需要添加尽可能多或更少的选项。我有点卡住了两件事:点击更新输入值字段并检查是否存在
- 如果他们添加多个选项,是否可以用逗号分隔这些值?
- 如果他们再次选择了相同的选项但添加了其他选项,它只会删除该选项并保留其余选项?
任何帮助?这是我迄今为止所拥有的。我建立了一个jsFiddle,可能有帮助?谢谢。
https://jsfiddle.net/w1x9Lpho/
$(document).on('click touchstart', '.project-library-filters-container ul.project-sectors-list li a', function(e) {
$(this).each(function() {
$(this).parent('li').addClass('active');
if ($(this).parent('li').is('active')) {
var dataName = '';
$('input[name=project_sectors]').val($('input[name=project_sectors]').val() + dataName).serialize();
} else {
var dataName = $(this).data('name');
$('input[name=project_sectors]').val($('input[name=project_sectors]').val() + dataName).serialize();
}
});
e.preventDefault();
});
这是真正伟大的,明确的理解。我感谢你给我你的时间。我用'全部'的想法是,如果它被选中,它会清除所有的值。我需要考虑'积极'类如何工作。 –
太好了。您可以直接使用'$ this.toggleClass('active')'为'li'元素的'a'元素或$ li.toggleClass('active')'添加/删除'active'类。如果我的答案回答了您的问题,请不要忘记点击[答案]旁边的复选标记(http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-工作/ 5235#5235)。 –