将输入值传递给$ mdDialog

马修斯·科斯塔(Matheus Costa)

我正在尝试将表单输入传递给我的对话框(例如,标题)。问题是:它没有得到表格$scope

如果我将$scope控制器设置为sinde,它将正常显示($scope.text例如参见)。但是,如果我尝试获取表单$scope(请参见`$ scope.taskTitle),它什么也不会显示。看我的代码:

的JavaScript

app.controller('tasksCtrl', ['$scope', '$mdDialog',  function($scope, $mdDialog){


$scope.teste = 'Just a test, dude';

$scope.expandTask = function() {

    $mdDialog.show({
        clickOutsideToClose: true,
        controller: DialogController,
        scope: $scope,
        preserveScope: true,
        templateUrl: 'models/dialog.tmpl.php',
        locals: {
            id: $scope.tasklist.id,
            title: $scope.taskTitle
        }
    });

}

function DialogController($scope, $mdDialog, id, title) {

    $scope.id = id;
    $scope.title = title;

    $scope.hide = function() {
        $mdDialog.hide();
    };

    $scope.cancel = function() {
        $mdDialog.cancel();
      };
}
}]);

的HTML

<div class="input-container float-icon" flex="100" layout="row" ng-repeat="task in tasklist">
    <md-input-container flex="100">
        <label>New Task...</label>
        <input type="text" ng-model="taskTitle" name="taskTitle">
        <md-button aria-label="Expandir Tarefa" class="md-icon-button expand-icon" ng-click="expandTask()">
            <md-tooltip hide-sm>Expand Task</md-tooltip>
            <i class="fa fa-expand"></i>
        </md-button>
    </md-input-container>

    {{taskTitle}}

</div>
杰克福克

您应该将task对象从ng-repeat传递到ng-click中。

对于前 ng-click="expandTask($event, task)"

在$ mdDialog控制器中,您将可以访问该对象:

app.controller('tasksCtrl', ['$scope', '$mdDialog', function ($scope, $mdDialog) {

    $scope.expandTask = function (e, task) {
        //ng-click="expandTask($event, task)"
        $mdDialog.show({
            clickOutsideToClose: true,
            controller: function ($mdDialog) {
                var vm = this;
                vm.task = {};
                vm.task = task;  //your task object from the ng-repeat

                $scope.hide = function () {
                    $mdDialog.hide();
                };
                $scope.cancel = function () {
                    $mdDialog.cancel();
                };
            },
            controllerAs: 'modal',
            templateUrl: 'models/dialog.tmpl.php',
            parent: angular.element(document.body),
            targetEvent: e
        });
    };
}]);

在模态模板中,您将使用controllerAs表示法访问任务对象,例如:

 <h1> {{ modal.task.name }} <h1>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将图像传递到$ mdDialog

来自分类Dev

角度材料 - 意外值“MdDialog”

来自分类Dev

如何将ng-repeat中的当前对象传递给$ mdDialog?

来自分类Dev

取消角度mddialog后,传递的值仍会编辑

来自分类Dev

$ mdDialog关闭后调用点击事件文件输入

来自分类Dev

将输入值传递给空的div

来自分类Dev

angular:将输入值传递给组件

来自分类Dev

将范围值传递给隐藏的输入

来自分类Dev

将值传递给隐藏的输入?

来自分类Dev

将jQuery输入值传递给url?

来自分类Dev

将选择值传递给输入名称

来自分类Dev

jQuery,将输入值传递给克隆的输入字段

来自分类Dev

将角形材料将angularjs 1.5组件加载到$ mdDialog中

来自分类Dev

使用$ mdDialog.show()将范围项返回到父范围

来自分类Dev

AngularJS-材质设计| 可以将$ mdBottomSheet放在$ mdDialog上吗?

来自分类Dev

将输入标签值传递给href参数

来自分类Dev

将值传递给jquery创建的输入字段

来自分类Dev

如何从输入字段将值传递给javascript闭包

来自分类Dev

Angularjs:如何将输入值传递给函数?

来自分类Dev

将输入元素的值作为参数传递给viewmodel函数

来自分类Dev

将多个输入值传递给函数以更新图像

来自分类Dev

将表单输入的值传递给React中的同级组件

来自分类Dev

如何将所选输入的值传递给eventListener函数

来自分类Dev

将值输入从主方法传递给私有变量

来自分类Dev

如何将输入值传递给Javascript中的方法?

来自分类Dev

Angularjs:如何将输入值传递给函数?

来自分类Dev

通过g:每次迭代将值传递给输入

来自分类Dev

如何将输入值传递给后面的代码?

来自分类Dev

在laravel下将输入值传递给javascript

Related 相关文章

热门标签

归档