当我按下按钮时,我想在我的控制台中打印我的文本框的值。但我的文本框返回一个未定义的。看起来,所有的代码都工作得很完美,我做了和之前使用的其他代码一样的方式,但它现在不能工作。AngularJS文本框的值返回undefined
这是我的html代码:
<form class="form-horizontal">
<input type="text" ng-model="add" ng-model-instant><button class="btn" ng-click="order()"><i class="icon-plus"></i>Order!</button>
</form>
这是我的脚本:
angular.module('MyApp', []).
config(function($routeProvider) {
$routeProvider.
when('/boeken', {templateUrl:'partials/boeken.html', controller:BoekenCtrl}).
when('/orders', {templateUrl:'partials/orders.html', controller:OrderCtrl}).
when('/home', {templateUrl:'partials/home.html', controller:HomeCtrl}).
otherwise({redirectTo:'/home'});
});
//BoekenCtrl
//HomeCtrl
function OrderCtrl($rootScope) {
$rootScope.order = function() { console.log($rootScope.add); $rootScope.add = ""; };
}
为什么我的文本框未定义,?
的例子请,显示你所有的代码存储。听起来你有控制器的问题。为什么使用'$ rootScope'? –
添加了我的更多代码。 BoekenCtrl和HomeCtrl工作正常。我使用$ rootScope',因为该应用程序很简单,并且不需要服务。 –
所以你的表单引用'OrderCtrl'。你是否尝试将日志打印到'OrderCtrl'(不在函数中)?我认为改为'$ rootScope.order = function()'使用'$ scope.order = function()'。因为在html中你使用了特定的'范围'。关于'body?'ng-controller =“OrderCtrl”? –