JSFiddle - React, Tailwind, and code Playground
HTML
<link rel="stylesheet" href="http://cdn.kendostatic.com/2014.2.1008/styles/kendo.common.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2014.2.1008/styles/kendo.default.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2014.2.1008/styles/kendo.dataviz.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2014.2.1008/styles/kendo.dataviz.default.min.css">
<script src="http://cdn.kendostatic.com/2014.2.1008/js/jquery.min.js"></script>
<script src="http://cdn.kendostatic.com/2014.2.1008/js/angular.min.js"></script>
<script src="http://cdn.kendostatic.com/2014.2.1008/js/kendo.all.min.js"></script>
<base href="http://demos.telerik.com/kendo-ui/grid/angular">
<div id="example" ng-app="Test">
<div ng-controller="MyCtrl" ng-init="Init()">
<select kendo-combo-box
placeholder="'Please select'"
k-options="optGender"
ng-model="Gender"
style="width: 50%">
</select>
<button kendo-button ng-click="OnClick($event)">?</button>
<br /><br />
<div id="log"></div>
</div>
</div>
JavaScript
var app = angular.module("Test", [ "kendo.directives" ]);
app.controller('MyCtrl',
['$scope', '$log',
function($scope, $log)
{
var genders =
[
{ text: 'Male', value: 1 },
{ text: 'Female', value: 2 }
];
$scope.Gender = 1;
$scope.Init = function(){
$('#log').append('Initialized' + '<br />');
$('#log').append('$scope.Gender: ' + $scope.Gender + '<br />');
}
$scope.$watch('Gender', function(newVal, oldVal) {
$('#log').append('$scope changed from:' + newVal + ' to ' + oldVal +'<br />');
});
$scope.optGender = {
dataSource: {
serverFiltering: true,
transport: {
read: function(opt) {
$('#log').append('Requesting' + '<br />');
$('#log').append('$scope.Gender: ' + $scope.Gender + '<br />');
// just delay to mimic the network behavior
setTimeout(function(){
$('#log').append('Requested' + '<br />');
$('#log').append('$scope.Gender: ' + $scope.Gender + '<br />');
opt.success(genders);
},3500);
}
}
},
dataTextField: 'text',
dataValueField: 'value',
dataBound: function ()
{
$('#log').append('DataBound' + '<br />');
$('#log').append('$scope.Gender: ' + $scope.Gender + '<br />');
}
}
$scope.OnClick = function(event) {
event.preventDefault();
alert($scope.Gender);
}
}]);