如何将ng-Model的值赋予Controller angular js

时间:2015-12-23 08:12:11

标签: javascript angularjs

请帮我查一下这部分代码。

<body ng-app = "myApp">
<h1>FORM </h1>
    <div ng-controller="myController">
    <p><label>Username : </label><input type="text" ng-model="user.username" name="username" id="username" /></p>
    <p><label>Email : </label><input type="email" ng-model="user.email"/></p>
    <p><label>Verifikasi Email : </label><input type="email" ng-model="user.verify_email"  /></p>
    <p><label>Password : </label><input type="password"  ng-model="user.password" id="password" /></p>
    <button type="button" ng-click = "add()"  >Sig In</button>
</div>
</body>

在我的Javascript中:

<script>
var app = angular.module('myApp', []);
    app.controller("myController", function($scope){
$scope.user = {};
$scope.add = function(){
     $scope.data = [
                    { nama : $scope.user.username},
                    { email : $scope.user.email},
                    {password : $scope.user.password } ];
console.log($scope.data);
    }               
 });

谢谢大家。我已经更新了我的脚本。当我单击按钮时,控制台没有打印数据。为什么?我认为有些不对劲。

2 个答案:

答案 0 :(得分:6)

您没有定义user

但如果仅使用user作为

之类的模型,那不应该是问题
<input type="text" ng-model="user" name="username" id="username" />

它将被添加为scope中的属性而不用担心。

但您已在username中添加了属性user

由于userundefined,因此该方案将为undefined.username,但不允许这样做。

尝试将user定义为对象,然后自动添加任何属性。

喜欢这个

$scope.user={};

答案 1 :(得分:1)

你应该

在HTML中

$(document).ready(function() {
    $("#btnExport").click(function(e) {
    e.preventDefault();

    //getting data from our table
    var data_type = 'data:application/vnd.ms-excel';
    var table_div = document.getElementById('history');
    var table_html = table_div.outerHTML.replace(/ /g, '%20');

    var a = document.createElement('a');
    document.body.appendChild(a);
    a.href = data_type + ', ' + table_html;
    a.download = 'exported_table_' + Math.floor((Math.random() * 9999999) + 1000000) + '.xls';
    a.click();
    e.preventDefault();});});

的情况

  

ng-click =&#34; add()&#34;

使用

  

ng-click =&#34;添加(用户)&#34;

控制器中的

<body ng-app = "myApp"> 

    <div ng-controller="myController">
        <p><label>Username : </label><input type="text" ng-model="user.username" name="username" id="username" /></p>
        <p><label>Email : </label><input type="email" ng-model="user.email"/></p>
        <p><label>Verifikasi Email : </label><input type="email" ng-model="user.verify_email"  /></p>
        <p><label>Password : </label><input type="password"  ng-model="user.password" id="password" /></p>
        <button type="button" ng-click = "add(user)"  >Sig In</button> 
    </div> 

</body>