javascript - AngularJS - 在更新字段后在 ng-repeat 中查找对象

标签 javascript html angularjs function

我正在开发在线仪表板。该仪表板有一个页面,其中包含与某个项目相关的所有任务。每个任务都有诸如为任务预订的小时数和进度(0 到 100%)等字段。

The table looks as follows

可以更改进度字段,因为它包含一个包含所有可能百分比的下拉菜单。我曾经更改进度,选择我更改的每一行并单击“更新任务”按钮以将它们发送到我的 Controller 并更新它们。这很好,直到我的一位同事想出了一旦进度字段的值发生变化就自动更新任务的想法。我可以在每个值上放置一个 ng-click,它会在我更改值时立即激活。

但是我的问题是,我怎样才能让我的 Controller 知道我当时在哪一行工作。假设我有 3 个不同的任务并更改任务 2 的进度。我的 Controller 应该知道它必须将任务 2 的 ID 发送到服务器以更新其内容。

一旦任务 2 的值更改为(例如 30%),updateTaskById() 方法就会执行。此方法应使用新值更新数据库中的任务。我如何让我的 Controller 知道它必须更新什么任务。

HTML

    <td md-cell class="tdWidth">
                <md-select ng-model="task.custom_fields['96203']" placeholder="100%">
                    <md-option value="0" ng-click="updateTaskById()">0%</md-option>
                    <md-option value="0.1" ng-click="updateTaskById()">10%</md-option>
                    <md-option value="0.2" ng-click="updateTaskById()">20%</md-option>
                    <md-option value="0.3" ng-click="updateTaskById()">30%</md-option>
                    <md-option value="0.4" ng-click="updateTaskById()">40%</md-option>
                    <md-option value="0.5" ng-click="updateTaskById()">50%</md-option>
                    <md-option value="0.6" ng-click="updateTaskById()">60%</md-option>
                    <md-option value="0.7" ng-click="updateTaskById()">70%</md-option>
                    <md-option value="0.8" ng-click="updateTaskById()">80%</md-option>
                    <md-option value="0.9" ng-click="updateTaskById()">90%</md-option>
                    <md-option value="1" ng-click="updateTaskById()">100%</md-option>
                </md-select>
            </td>

Angular Controller :

    $scope.updateTaskById = function() {
        // Update functionality here
    };

提前致谢,我希望我的问题足够清楚。

编辑:如 Alexandru 的回答所示,可以发送我从 ng-click 更改的任务的值。例如:updateTaskById(task.task_id)

最佳答案

您可以将值传递给 ng-click 方法。例如,

 <md-option value="0" ng-click="updateTaskById(0)">0%</md-option>

JS

$scope.updateTaskById(value){
   console.log(value);
}

关于javascript - AngularJS - 在更新字段后在 ng-repeat 中查找对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43738372/

相关文章:

html - CSS 动画在 HTA 中不起作用

html - 动态更改主体颜色,这应该反射(reflect)在 Angular js 的每个页面中

javascript - 当我使用 Angular md-selected 索引频繁切换选项卡时,多个 'md-tab' 同时具有 'md-active' 类

javascript - Onchange 和表行选择的脚本冲突

javascript - jquery 在查找或过滤之前返回到元素

javascript - 当在字符序列末尾添加空格时,为什么此正则表达式会失败?

javascript - 通过 ng-repeat 过滤器进行 Angular 组

javascript - 如何监听警报弹出窗口,然后在 javascript 中弹出警报时自动单击“确定”?

javascript - 如何根据 html 或 javascript 中的日期对列表进行排序?

javascript - AngularJS 将变量从 html 传递到 href 上的 Controller