javascript - 将数据从 Controller 发送到js函数

标签 javascript angularjs

我有 Controller :

function NameController($scope){
        $scope.data = {
            name: 'Alex',
        }
    }

和 HTML

    <div ng-controller="NameController">
        <a href="#" onclick="alert( {{data.name}} );"> ClickMe </a>
    </div>

为什么它不起作用以及如何使它起作用? 谢谢。

最佳答案

当您在 View 中调用 alert 时,它实际上是在查找未定义的 $scope.alert。您可以在 Controller 中创建一个 alert 函数来调用 javascript alert 函数:

$scope.alert = function(data){
   alert(data);
};  

您还应该使用 ng-click 而不是 onclick:

<a href="#" ng-click="alert(data.name)"> ClickMe </a>

ng-click 采用 Angular 表达式。如果您使用 onclick,javascript(非 Angular)会尝试处理点击事件,但它不理解 {{data.name}} 是什么。

Demo

关于javascript - 将数据从 Controller 发送到js函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24467407/

相关文章:

javascript - 在 Knockout.js 中复制数组

javascript - 创建适用于智能感知的 javascript 函数

javascript - setInterval 仅在屏幕上的某些操作上被调用

javascript - 在angularjs中按名称计算对象

javascript - Angular DOM 修改时机

javascript - 如何计算哪个顶点最接近 3D 点?

javascript - Js Observable 设置属性和子属性

javascript - 如果我使用渲染布局,则无法关闭弹出窗口

javascript - 计算嵌套 json 中选择的元素数量

angularjs - Angular 用户界面树折叠/展开不起作用