Fix: Tags Input - полное исправление
✅ API не возвращает группы при пустом запросе ✅ onItemAdd вместо onChange для добавления тегов ✅ Очистка поля после добавления тега ✅ Фильтрация по организации пользователя Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
parent
5689604004
commit
c5a5280f56
|
|
@ -13,6 +13,11 @@ class GroupSearchController extends Controller
|
|||
$query = $request->get('q', '');
|
||||
$userId = $request->get('user_id', null);
|
||||
|
||||
// Если запрос пустой - возвращаем пустой массив
|
||||
if (empty(trim($query))) {
|
||||
return response()->json([]);
|
||||
}
|
||||
|
||||
$groupsQuery = Group::query()->with('organization');
|
||||
|
||||
// Если указан user_id - фильтруем по доступным группам
|
||||
|
|
|
|||
|
|
@ -90,10 +90,10 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||
return '<div>' + escape(data.text) + '</div>';
|
||||
}
|
||||
},
|
||||
onChange: function(value) {
|
||||
if (value && this.options[value]) {
|
||||
addTag(value, this.options[value]);
|
||||
this.clear();
|
||||
onItemAdd: function(value, $item) {
|
||||
const data = this.options[value];
|
||||
if (data) {
|
||||
addTag(value, data);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -113,6 +113,11 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||
<span class="remove-tag" onclick="removeTag(${id}, this)">×</span>
|
||||
`;
|
||||
tagsContainer.appendChild(tag);
|
||||
|
||||
// Очищаем поле ввода
|
||||
setTimeout(() => {
|
||||
select.clear();
|
||||
}, 100);
|
||||
}
|
||||
|
||||
// Удаление тега
|
||||
|
|
|
|||
Loading…
Reference in New Issue