Php 选择2可在确认框中添加新标签

Php 选择2可在确认框中添加新标签,php,jquery,ajax,json,jquery-select2,Php,Jquery,Ajax,Json,Jquery Select2,在Select2中,我有了基本的标签功能。标记系统在插入项目页面中工作,在该页面中,我可以使用存储在数据库中并由AJAX调用的某些预定义标记来标记项目,也可以在更新项目页面中使用相同的机制,在标记字段中添加当前存储的标记 我希望这样,如果当前不存在任何标记,用户将收到一个确认框,询问他们是否要添加新标记,然后点击ok,该标记将存储在数据库中。还应有几秒钟的缓冲时间供Select2查找标签,否则可能会产生重复 我已经阅读了一些关于如何执行jquery部分的内容,尽管对于我来说它并不完整。有人能告诉

Select2
中,我有了基本的标签功能。标记系统在插入项目页面中工作,在该页面中,我可以使用存储在数据库中并由AJAX调用的某些预定义标记来标记项目,也可以在更新项目页面中使用相同的机制,在标记字段中添加当前存储的标记

我希望这样,如果当前不存在任何标记,用户将收到一个确认框,询问他们是否要添加新标记,然后点击ok,该标记将存储在数据库中。还应有几秒钟的缓冲时间供
Select2
查找标签,否则可能会产生重复


我已经阅读了一些关于如何执行jquery部分的内容,尽管对于我来说它并不完整。有人能告诉我怎么做吗?我不是在寻找完整的答案,只是寻求指导。

看看这个问题:

在您的情况下,使用小提琴,您可以使用以下内容:

$('#tags').on("change", function(e){
    if (e.added) {
        if (/ \(new\)$/.test(e.added.text)) {
           // A new tag was added
           // Prompt the user
           var response = confirm("Do you want to add the new tag "+e.added.id+"?");

           if (response == true) {
              // User clicked OK
              console.log("Sending the tag to the server");
              $.ajax({
                   type: "POST",
                   url: '/someurl&action=addTag',
                   data: {id: e.added.id, action: add},    
                   error: function () {
                      alert("error");
                   }
               });
           } else {
                // User clicked Cancel
                console.log("Removing the tag");
                var selectedTags = $("#tags").select2("val");
                var index = selectedTags.indexOf(e.added.id);
                selectedTags.splice(index,1);
                if (selectedTags.length == 0) {
                    $("#tags").select2("val","");
                } else {
                    $("#tags").select2("val",selectedTags);
                }
           }
        }
    }
});

.

非常有趣!谢谢你的提问。在PHP脚本中,哪些变量被发送到
/someurl&action=addTag
?很明显,我需要一个术语。哦,没关系,我没有注意数据。我注意到的一个错误是,如果你取消确认,你仍然可以看到一个错误框(在你的小提琴中)。你知道为什么会发生这种情况吗?嗯。如果你使用的是旧浏览器,那么删除标记的代码可能不起作用-你必须使用其他代码通过JavaScript从数组中删除元素。我使用的是当前版本的chrome。你在用什么?啊哈-问题是当新标签是select中唯一的标签时。固定的。