使用AngularJs启用/禁用Kendo DropDownList Razor

时间:2016-08-03 15:24:16

标签: angularjs kendo-asp.net-mvc

我正在尝试将angularJs(版本1.3.0)与kendo-asp.net.mvc(版本2015.1.429)一起使用。

我想知道是否可以使用AngularJs启用/禁用Kendo Razor助手DropDownList。

代码示例(我希望禁用kendo下拉列表“DdlTest”如果我从下拉列表“color”中选择值为“1”的第一个元素“Black”):

.cshtml页面

<div ng-app="myApp">
    <div ng-controller="MainController">
        <h4>Cap Color</h4>
        @(Html.Kendo().DropDownList()
            .Name("color")
            .HtmlAttributes(new
            {
                ng_model="selectedField",
                ng_change="changeField(kendoEvent)"
            })
            .DataTextField("Text")
            .DataValueField("Value")
            .BindTo(new List<SelectListItem>() {
                new SelectListItem() {
                    Text = "Black",
                    Value = "1"
                },
                new SelectListItem() {
                    Text = "Orange",
                    Value = "2"
                }
            })
        )

        <h4 style="margin-top: 2em;">Cap Size</h4>
        @(Html.Kendo().DropDownList()
            .Name("DdlTest")
            .BindTo(new List<string>() {
                "S - 6 3/4\"",
                "M - 7 1/4\"",
                "L - 7 1/8\"",
                "XL - 7 5/8\""
            })
        )
    </div>
</div>

这是AngularJs代码

<script>
    var app = angular.module("myApp", ["kendo.directives"]);

    app.controller("MainController", function($scope) {
        $scope.selectedField = "0";
        $scope.changeField = function(e) {
            switch ($scope.selectedField) {
                case '1':
                    $scope.DdlTest.enable(false);
                    break;

                default:
                    $scope.DdlTest.enable(true);
                    break;
            }
        }
    });
</script>

当我更改我收到的下拉列表的值时:

  

错误:$ scope.DdlTest未定义

我试图在下拉列表“DdlTest”的HtmlAttributes中插入值:

kendo_drop_down_list = "DdlTest"

但它在IE和Firefox上不起作用,它似乎只适用于Chrome。

问题

是否可以在Razor中使用带有kendo mvc组件的angularJs? 如果可能,我如何启用/禁用kendo下拉列表?

0 个答案:

没有答案