如何不允许在 AngularJS 的 ui-select 中复制粘贴的值

Posted

技术标签:

【中文标题】如何不允许在 AngularJS 的 ui-select 中复制粘贴的值【英文标题】:How to not allow copy pasted values in ui-select in AngularJS 【发布时间】:2017-03-15 12:26:44 【问题描述】:

我有一个dropdown list 和一个ui-select。基于下拉值ui-select 值是绑定的。但如果我直接将该特定值粘贴到ui-select 中,它会显示为已选中。 我们如何防止ui-select 复制粘贴值?

示例如下所示。

选择查询
                    <div class="dropdown-Finding">
                        <ui-select class="form-control dropdown-reviwerFinding-select" id="searchBarArea" onkeypress="return false;" multiple tagging tagging-label="false" ng-model="QiReviewerFindingType.selectedItems" theme="bootstrap">
                            <ui-select-match placeholder="Select Reviewer Findings">$item.ShortDescription</ui-select-match>
                            <ui-select-choices repeat="qiQueryFinding in qiQueryFindings | filter:$select.search">
                                qiQueryFinding.ShortDescription
                            </ui-select-choices>
                        </ui-select>
                        <span class="carat" open-menu-by-click="searchBarArea"></span>
                    </div>

【问题讨论】:

你能提供代码吗? 您介意提供更多关于您想要实现的目标和用例的详细信息吗?很难解释为什么要阻止复制粘贴输入 提供的示例。 【参考方案1】:

http://plnkr.co/edit/BVaXpviCACi5sd3aw9oX?p=preview

使用这类代码。

<ui-select ng-model="ctrl.person.selected" theme="select2" on-select="ctrl.onSelectCallback($item, $model)" ng-disabled="ctrl.disabled" style="min-width: 300px;" title="Choose a person">
<ui-select-match placeholder="Select a person in the list or search his name/age...">$select.selected.name</ui-select-match>
<ui-select-choices repeat="person.email as person in ctrl.people | propsFilter: name: $select.search, age: $select.search">
  <div ng-bind-html="person.name | highlight: $select.search"></div>
  <small>
    email: person.email
    age: <span ng-bind-html="''+person.age | highlight: $select.search"></span>
  </small>
</ui-select-choices>

我试图找出确切的区别,但我做不到。但可能以上示例会对您有所帮助。

【讨论】:

以上是关于如何不允许在 AngularJS 的 ui-select 中复制粘贴的值的主要内容,如果未能解决你的问题,请参考以下文章

URLrewrite后不允许AngularJS / c#WebAPI 405方法

AngularJS、REST、C# 服务、405 - 不允许发布方法

AngularJS ie 11 中严格模式下不允许对只读属性赋值

405 方法不允许使用 $http 服务 AngularJS

AngularJS:$http.get 405(不允许的方法)

即使 CORS 不允许标头值,Angularjs 也会继续进行服务器调用