【问题标题】:Select2-No-Results adding items to databaseSelect2-No-Results 将项目添加到数据库
【发布时间】:2015-09-22 10:40:41
【问题描述】:

我正在使用 Bootstrap,我想使用 select2 来允许用户从我的数据库中的项目列表中进行选择。但如果什么都没有,我希望用户将自己的数据添加到数据库中。我的问题是如何添加一个在显示“select2-no-results”属性时会弹出模式的链接。

【问题讨论】:

    标签: javascript jquery-select2


    【解决方案1】:

    不确定它是否有帮助?但是让我们看看

    我尝试了一个简单的工作示例,您可以显示模型对话框,现在我添加了警报消息,如果您想使用点击事件触发,您可以使用 href onclick 或其他满足您要求的东西,

    $('#search-select').select2({
         formatNoMatches: function(term) {
           alert("Your Model Goes Here");
        return  "<a href='#'  class='no-results-btn btn-danger'>Use it anyway</a>";
      },
    
    });
    

    工作Fiddle

    【讨论】:

    • 我把那个放在哪里?在 select2.js 中?
    • 如何在下拉列表中初始化 select 2?你有没有在某处打电话给$('your class or id').select2(); 如果是这样,那么用我发布的行替换该行可能会有所帮助
    【解决方案2】:

    在你的结果函数中,如果:

    if($("select2-no-results")){
         $("#yourmodal").show();
    }
    

    更好的方法是简单地使用输入 val 并将其直接存储在提交时。这样您就不会为模式窗口或触发器而烦恼。

    【讨论】:

    • 对不起,哪个结果函数?我还在学习 Bootstrap。
    【解决方案3】:

    查看select2 docs 中的select2-loaded 事件。该事件使您可以访问加载的数据,以便查看是否没有结果。

    注意:正如 Kevin Brown 在 cmets 中提到的,这仅适用于您使用的是 v4 之前的版本。

    【讨论】:

    • 请注意,Select2 4.0.0 中不再存在此事件。
    猜你喜欢
    • 1970-01-01
    • 2021-01-18
    • 2023-04-01
    • 1970-01-01
    • 2021-07-18
    • 1970-01-01
    • 1970-01-01
    • 2016-08-03
    • 1970-01-01
    相关资源
    最近更新 更多