AngularJS - ng-model不使用bootstrap指令

时间:2014-02-04 14:06:53

标签: javascript css angularjs twitter-bootstrap

我正在为我的项目使用AngularJS,我是新手。但我喜欢它的功能,也很方便开发。但我想出了以下问题,并且不知道要摆脱它。

我有一个多视图应用程序。以下代码是注册视图的一部分。按下注册按钮时会显示此视图。现在的问题是,在下面的第4和第5行,我附加了一个ng-model属性,并且我能够打印使用{{num}}指令获得的数字。但是,下面的ng-model num2没有显示如上。我得到的只是显示的静态文本{{num2}}。为什么它不像以前那样工作?

<form role='form' action='#/app/register_db' method='post'>
    <h1><small><b>Sign Up Information<b></small></h1>
    <br>
    <input type='text' ng-model='num'>
    <h1>{{num}}</h1>
    <div class='row'>
        <input type='text' ng-model='num2'>
        <h1>{{num2}}</h1>
        <div class='col-xs-5'>
            <input type="text" class='form-control' id="fn" name='firstname' ng-model='ng-firstname' placeholder="First Name">
        </div>
    </div>
...
...

我是AngularJS的新手,我很快就掌握了概念。因此,如果我遗漏了某些内容,请引导我走正确的道路并帮助我解决这个问题。

我正在使用angularJS和Bootstrap CSS。

感谢。

1 个答案:

答案 0 :(得分:1)

您应该在浏览器的控制台中收到以下错误消息:

[ngModel:nonassign] Expression 'ng-firstname' is non-assignable. Element: <input type="text" class="form-control" id="fn" name="firstname" ng-model="ng-firstname" placeholder="First Name">

由于ng-model="ng-firstname"不是名称引用,而是AngularJS将尝试评估的表达式,因此只需不使用破折号就可以解决这个问题。当你破解代码时会发生什么,AngularJS基本上会停止,而AngularJS通常会在后面的元素中做任何其他事情,根本不会发生。