从数据列表angularjs获取数据属性值

时间:2019-12-30 03:06:24

标签: javascript angularjs angularjs-ng-model

我目前正在使用<datalist>进行轻松查找。我的数据列表中的每个<option>都有一个data-sysid属性,该属性充当我需要的实际值。当前,我正在使用ng-model来设置id变量。但是,默认情况下,ng-model使用value属性。有什么方法可以使ng-model使用我的data-sysid属性中设置的值代替该值?

这是我目前拥有的:

angular.module('myApp', [])
  .controller('myController', function($scope) {
    $scope.id = "";
  });

angular.element(document).ready(() => {angular.bootstrap(document, ['myApp']);});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>

<div ng-controller="myController">
  <input list="items" id="item-choice" name="item-choice"
               placeholder="Choose an item" ng-model="id" />

  <datalist id="items">
    <option value="Item1" data-sysid="xyz">
    <option value="Item2" data-sysid="abc">
    <option value="Item3" data-sysid="123">
  </datalist> 
  
  {{ id }}
  <!-- I would like this to display data-sysid value instead -->
</div>

我想要的行为是这样的:

  • 如果我选择"Item1",则显示(id)将是xyz
  • 如果我选择"Item2",则显示(id)将是abc
  • 如果我选择"Item3",则显示(id)将是123

有什么方法可以使用angularjs(最好是没有jQuery)来实现这一目标?

0 个答案:

没有答案