【问题标题】:kendoui + angularjs + autocomplete show text but set id as valuekendoui + angularjs + 自动完成显示文本但将 id 设置为值
【发布时间】:2015-08-21 10:22:58
【问题描述】:

我正在使用 Kendoui's autocomplete 和 angularjs。

我有以下数据源:

[{Name:"Albania", Id:"1"},{Name:"Andorra", Id:"2"}]

如何在自动填充中向用户显示名称(阿尔巴尼亚、安多拉等)但将字段值设置为 id

这是我尝试过的:dojo kendoui 所以我现在得到了整个对象,但无法将值设置为 id。

<script>
  function MyCtrl($scope){
      $scope.countries = [
        {"Name":"Albania", "Id":"1"},
        {"Name":"Andorra", "Id":"2"},
        {"Name":"Armenia", "Id":"3"},
        {"Name":"Austria", "Id":"4"}
      ];
  }
</script>

<div ng-controller="MyCtrl">
  <input id="i" kendo-auto-complete ng-model="country" k-data-source="countries" data-text-field="Name" />
  <p>
    Your selection: {{ country }}
  </p>
</div>

我继续尝试修复,但我还没有:

我现在拥有的是:dojo

我认为我可以使用选择处理程序和/或更改处理程序来设置值,但保持自动完成中的文本不变,但没有成功。

【问题讨论】:

  • 删除了一行说明 /edit

标签: angularjs autocomplete kendo-ui


【解决方案1】:

还没有真正尝试过使用 kendo 和 angularjs,根据this,具有数据原语 true 的 kendo 自动完成将返回 dataTexfield/olny 字符串文本的数组,数据值字段不起作用。而是使用默认数据原语 false 将返回整个选定对象。检查这个dojo你可以通过先获取整个对象来获取id。

【讨论】:

  • 嗨。谢谢你的回答......不,我有这个: 在与上述相同的 dojo 链接上。但该值仍设置为 Name 而不是 Id
  • 看看我修改后的答案,抱歉,我正在使用我的平板电脑回答。看看道场链接
  • 抱歉,我的错误。啊,用平板电脑修改太难了。
  • 没问题 :-) 平板电脑键盘很恐怖 ;-) 是的.. 你修改后的 dojo 仍然是错误的...意味着我仍然将名称作为值 :-(
  • 顺便说一句,ng-model 在哪里
【解决方案2】:

我尝试继续解决问题。但我还没说完。

我现在拥有的是:dojo

我认为我可以使用选择处理程序和/或更改处理程序来设置值,但保持自动完成中的文本不变。但我还是失败了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-17
    • 1970-01-01
    • 1970-01-01
    • 2013-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多