angular-ui select2 tagging 更新数据值

Posted

技术标签:

【中文标题】angular-ui select2 tagging 更新数据值【英文标题】:angular-ui select2 tagging update the data value 【发布时间】:2013-03-18 19:15:21 【问题描述】:

这是我的 select2 输入

<input type="hidden" ng-model="ProjectTagpr" class="input-large" ui-select2="tagOptions" />

tagOptions 的位置是


    data: ["id":301,"text":"tag2","id":302,"text":"tag2","id":303,"text":"tag3","id":304,"text":"tag4"],
    multiple: true,
    createSearchChoice: function(term) 
        var timestamp = new Date().getTime();
        return id: timestamp, text: term, new: true;
    

ProjectTagpr

[301, 304];

使用标签 tag1, tag4 渲染 select2 然后将 ProjectTagpr 转为

["id":301,"text":"tag2","id":304,"text":"tag4"]

现在是第一个问题 我可以让它保持原来的 ProjectTagpr 结构(只是一个 id 数组,而不是同时具有 id 和文本的对象)吗?

还有第二个问题 如果我添加一个新标签,比如newtag5,它会扩展ProjectTagpr 类似id: 1554894854, text: 'newtag5', new: true,现在当我按下保存时,我希望我的$http 更新select2 上的原始data,所以它在那里添加了 newtag5(当然是从数据库返回的 id 并且没有 new: true),我该怎么做?

我尝试做$scope.tagOptions.data = dataReturnedFromHttp;,但显然(或没有)没有用..

【问题讨论】:

到目前为止,我只能通过销毁 select2() 并使用更新的选项重新初始化它来做到这一点......这很糟糕。 【参考方案1】:

其实很简单

data: function() 
   return 'results': $scope.data;

那么它几乎是实时绑定的。

只是它以某种方式没有记录,您可以将数据传递给函数..

【讨论】:

以上是关于angular-ui select2 tagging 更新数据值的主要内容,如果未能解决你的问题,请参考以下文章

Angular-ui select2 在将 Angular 与 twitter-bootstrap 混合时不起作用

如何将选项更改传递给 Angular-UI ui-select2?

select2、ng-model 和 angular

Angular-ui 日历错误

如何防止 angular-ui 模态关闭?

如何将 jsonp 与 angular-ui 日历一起使用