<!DOCTYPE html>
<html ng-app="app">

<head>
  <link data-require="bootstrap-css@*" data-semver="3.2.0" rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" />
  <link data-require="kendoUI@2014.2.716" data-semver="2014.2.716" rel="stylesheet" href="http://cdn.kendostatic.com/2014.2.716/styles/kendo.common.min.css" />
  <link data-require="kendoUI@2014.2.716" data-semver="2014.2.716" rel="stylesheet" href="http://cdn.kendostatic.com/2014.2.716/styles/kendo.default.min.css" />
  <link rel="stylesheet" href="style.css" />
</head>

<body ng-controller="AppCtrl as vm">
  <div class="col-sm-12">
    <p>
      First, select the Mfg1 or Mfg2 item from the Manufacturer list and you should notice the Manufacturer Id is updated to reflect the value of the different manufacturer. To see the odd behavior, tab or click off the select list when Mfg1 or Mfg2 is selected.
      You should notice the Manufacturer Id changes to the text from the select list instead of the Id.
    </p>
  </div>

  <form>
    <div class="form-group">
      <label class="control-label col-sm-2" for="MakeName">Name</label>
      <div class="col-sm-10">
        <input type="text" ng-model="vm.make.MakeName" id="MakeName" class="form-control" />
      </div>
    </div>
    <div class="form-group">
      <label class="control-label col-sm-2" for="MakeId">Id</label>
      <div class="col-sm-10">
        <input type="text" ng-model="vm.make.MakeId" id="MakeId" class="form-control" />
      </div>
    </div>
    <div class="form-group">
      <label class="control-label col-sm-2" for="ManufacturerId">Manufacturer</label>
      <div class="col-sm-10">
        <select kendo-combo-box k-options="vm.manufacturerOptions" ng-model="vm.make.ManufacturerId" id="ManufacturerId"></select>
      </div>
    </div>
    <div class="form-group">
      <label class="control-label col-sm-2" for="ManufacturerListId">Manufacturer Id</label>
      <div class="col-sm-10">
        <input type="text" ng-model="vm.make.ManufacturerId" id="ManufacturerListId" class="form-control" />
      </div>
    </div>
  </form>

  <script data-require="jquery@*" data-semver="2.1.1" src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
  <script data-require="angular.js@1.2.18" data-semver="1.2.18" src="https://code.angularjs.org/1.2.18/angular.js"></script>
  <script data-require="kendoUI@2014.2.716" data-semver="2014.2.716" src="http://cdn.kendostatic.com/2014.2.716/js/kendo.all.min.js"></script>
  <script src="script.js"></script>
</body>

</html>
  angular
    .module("app", ["kendo.directives"])
    .controller('AppCtrl', AppCtrl);

  function AppCtrl($log) {
    var vm = this;

    vm.make = {
      "MakeId": "ae06d050-6284-e311-8f0e-0025b500b17e",
      "MakeName": "Acura",
      "ManufacturerId": "401e4779-4984-e311-8f0e-0025b500b17e"
    };

    // Strings containing \r will cause a second change event
    // and will set the value to the text from the ComboBox.
    vm.manufacturersDS = new kendo.data.DataSource({
      data: [{
        "ManufacturerId": "401e4779-4984-e311-8f0e-0025b500b17e",
        "ManufacturerName": "Honda"
      }, {
        "ManufacturerId": "411e4779-4984-e311-8f0e-0025b500b17e",
        "ManufacturerName": "Mfg1\r"
      }, {
        "ManufacturerId": "421e4779-4984-e311-8f0e-0025b500b17e",
        "ManufacturerName": "Mfg2\r"
      }],
      sort: {
        field: 'ManufacturerName',
        dir: 'asc'
      }
    });

    vm.manufacturerOptions = {
      autoBind: false,
      change: vm.manufacturerChanged,
      dataSource: vm.manufacturersDS,
      dataTextField: 'ManufacturerName',
      dataValueField: 'ManufacturerId',
      filter: 'contains'
    };

    vm.manufacturerChanged = function() {
      $log.log('changed', this.value());
    };
  }
html, body, input, select {
  font-family: 'Trebuchet MS', Arial, sans-serif;
}

.form-group > .k-combobox {
  display: block;
  width: 100%;
}
I ran into an odd issue where a Kendo UI ComboBox was firing
a second change event and setting the value to the text of
the ComboBox. After looking at it long enough, I realized
some of the data had `\r` (carriage return) characters. Once
I removed those the ComboBox behaved as expected, with only
a single change event being fired and the value updating properly.