当单击表单上的按钮时,在角度然后打开窗口中动态设置kendo窗口标题和内容

时间:2014-10-10 19:22:20

标签: angularjs kendo-ui

这里是基本场景:在我的一些表单字段旁边,我有一个带有问号图像的小按钮。如果用户单击该按钮,我想使用kendo窗口显示该特定字段的帮助消息。我想将模态窗口的标题设置为相关的表单fieldname,并使用该字段的帮助消息设置窗口内容。

以下代码来自我希望在http://kendo-labs.github.io/angular-kendo/#/Window

上构建的示例

如果您在按钮的ng-click事件中发现,则正在调用kendo窗口的open()方法。但标题是k-title静态设置的。我已将其更改为指向范围变量。

我需要在我的Controller中调用一个函数,该函数将根据用户询问的表单字段更改$scope.helpTitle$scope.helpContent,然后打开kendo窗口。

什么是" Angular方式" 动态根据用户请求帮助的字段设​​置kendo模式窗口的标题和内容,然后打开窗口?

我已经在本地对象中获得了帮助内容;无需通过Ajax获取它。

<div ng-controller="MyCtrl">
  <div style="position: relative; width: 400px; height: 100px">

    <button id="ExpirationDateHelp" class="k-button" ng-show="!win2visible" ng-click="win2.open()">help</button>


    <div kendo-window="win2" k-title="helpTitle"
         k-width="600" k-height="200" k-visible="false"
         k-content="{template:   helpContent }"
         k-on-open="win2visible = true" k-on-close="win2visible = false"></div>
  </div>
</div>

1 个答案:

答案 0 :(得分:5)

您可以执行以下操作:

请注意,在你转动k-window =“win2”的那一刻,创建了一个引用此窗口的范围变量。

$scope.DlgOptions = {
            modal: true,
            title: "My Dyanamic Title",
            width: 1080,
            visible: false,
            draggable: false,
            pinned: true,
            resizable: false
        };

        $scope.win2.setOptions($scope.splashDlgOptions);
        $scope.win2.center();
        $scope.win2.open();