2014-02-19 2 views
1

방금 ​​AngularJS를 배우기 시작했으며 첫 페이지 중 하나에 제출을 가로채는 것이 필요합니다. 나는이 지시어를 NG 제출 사용하고 싶습니다하지만 내 코드에 문제가있는 것 같다 :AngularJS ng-submit form intercept 양식 제출

<html ng-app> 
<head> 
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.9/angular.min.js"></script> 

<script> 
function MyFormController($scope) { 
    scope.add = function(field) { 
    alert(field); 
}; 
} 
</script> 
<body> 
<div ng-controller="MyFormController"> 
<form ng-submit="add(field)"> 
    <input type="text" name="field" ng-model="field" /> 
    <input type="submit" value="Submit" /> 
</form> 
</div> 
</body> 
</html> 

내가 추가 함수가 호출되어 있는지 확인하기 위해 ALTER를 추가 한이, 아직 아무것도 표시되지 않습니다. 어리석은 문제 여야 겠지만 나는 그것을 잡지 못합니다. 어떤 도움이 필요합니까?
고마워요!

+3

오타? 범위 대신 $ scope입니까? 다음 번에 이와 같은 문제가 발생하면 먼저 Chrome 개발자 도구 나 방화탄을 열고 콘솔을보세요. – Dieterg

답변

0

당신은 매개 변수없이 값을 저장할 수 있습니다

<script> 
function MyFormController($scope) { 
    $scope.add = function() { 
    alert($scope.field); 
}; 
} 
</script> 

<body> 

<div ng-controller="MyFormController"> 

    <form ng-submit="add()"> 
    <input type="text" name="field" ng-model="field" /> 
    <input type="submit" value="Submit" /> 
    </form> 

</div> 

</body> 
0

이를 시도하십시오.

<script> 
function MyFormController($scope) { 
    $scope.add = function(field) { 
    alert($scope.field); 
}; 
} 
</script> 
<body> 
<div ng-controller="MyFormController"> 
<form ng-submit="add()"> 
    <input type="text" name="field" ng-model="field" /> 
    <input type="submit" value="Submit" /> 
</form> 
</div> 
</body> 
</html>