javascript - AngularJs 函数形式未定义

标签 javascript angularjs parse-platform

我正在尝试创建一个可以更改用户用户名的表单
这是我的 html 代码:

<div ng-controller="manageProfile" >
    <form>
        <div class="form-group">
            <label>Display Name</label>
                <input type="text" ng-model="user.currentName" placeholder="Display Name">
        </div>
        <button ng-click="changeName()">Change Username</button>
    </form>
</div>

这是我的 AngularJs 代码

var profile = angular.module('getUserInfo', ['ngParse']);
profile.controller('manageProfile', ['$scope', function($scope) {

    $scope.changeName = function(form) {
        var user = Parse.User.current();
        user.setUsername(form.currentName);
        user.save(null, {
            success: function(user) {
                console.log("success");
            },
            error: function(error) {
                console.log("fail");
            }
        });
     };
}]);

当我单击更改用户名按钮时,它会给出错误:表单未定义。有什么问题以及如何修复它?

最佳答案

点击事件的参数是“$event”。在 html 代码中,您没有将任何参数传递给changeName 函数。 在html中分配ng-model后,您可以使用ng-model从表单中获取值。

 $scope.changeName = function() {
        var user = Parse.User.current();
        user.setUsername($scope.user.currentName);
        user.save(null, {
            success: function(user) {
                console.log("success");
            },
            error: function(error) {
                console.log("fail");
            }
        });
     };

关于javascript - AngularJs 函数形式未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36050976/

相关文章:

Javascript 注入(inject)以改进 Flash 的 SEO

javascript - Angular 表达式 {{::}} 中的两个冒号是什么意思?

javascript - xml "reusable"代码

javascript - 如何在 javascript 中执行我的添加函数

javascript - 在 Angular 中构建一个宽度为 100% 的可重用 D3.js 图表?

javascript - AngularJs:迭代键值对的奇怪结果

ios - 错误 : 'Type of expression is ambiguous without more context'

ios - 解析登录不起作用(快速)

Swift查询解析类中的所有对象

javascript - 如何为打开表单的大量按钮创建可重用组件