2015-02-11 58 views
0

我不知道我在做什么错在这里,任何人都可以看到我做错了什么?我只想将我的表单输入(在这种情况下是日期选择器)传递给控制器​​函数,但是我尝试访问的所有内容都显示为未定义!

这里是我的形式

<form ng-submit="showRefinedGameMarkers(refinements)"> 
    <div class="list"> 
     <div class="datepickers"> 
     From Date: 
     <label class="item item-input"> 
     <input ng-controller="DatepickerCtrl" 
     type="text" 
     placeholder="Pick date" 
     ng-model="refinements.from_datepicker" 
     name="from_datepicker" 
     ng-click="opendateModal()" 
     readonly> 
     </label> 
     </div> 

这里是我的控制器类

.controller('MapController', function($scope, $ionicLoading, gameFactory, $compile) { 

    $scope.showRefinedGameMarkers = function(refinements) { 
    $scope.refinements = refinements; 
    console.log($scope.refinements); 
    ... 
    } 
}) 

我都试过,一切都只是显示为不确定的,所以讨厌!任何帮助将不胜感激

+2

添加$ scope.refinements = {};在你的控制器的顶部。 – nweg 2015-02-11 22:00:45

回答

1

您不需要将refinements传递给您的提交函数,因为它的绑定使用ng-model和angular会为您更改$scope.refinements

此外,您需要初始化您的控制器中的refinements变量。

$scope.refinements = {} 
+0

我把$ scope.refinements = {}放在控制器的顶部,但是我尝试的所有东西仍然显示为未定义。 $ scope.refinements = refinements;的console.log($ scope.refinements);甚至正确的语法?谢谢 – user1180888 2015-02-12 00:06:59

+0

对不起,确实工作,谢谢! – user1180888 2015-02-12 00:22:56

1

添加$ scope.refinements = {};在你的控制器的顶部。

+0

我把$ scope.refinements = {}放在我的控制器的顶部,但我尝试的所有东西仍然显示为未定义。 $ scope.refinements = refinements;的console.log($ scope.refinements);甚至正确的语法?谢谢 – user1180888 2015-02-12 00:07:15

+0

对不起,确实工作,谢谢! – user1180888 2015-02-12 00:22:37