2014-11-26 2 views
2

... 각도의 말씀

[ngSubmit]

는, (양식 서버로 요청을 전송하고 현재 페이지를 다시로드 의미)의 기본 동작을 방지하지만, 양식에 action, data-action 또는 x-action 속성이없는 경우에만 해당됩니다.

그래서 당신이 폼 submittion에서 사용자 정의 코드를 삽입하고 정의 [액션]을 방지하기 위해이 동작을 재정의 얼마나, HTML에서 [액션] 속성을 제거 할 수 없습니다 경우 트리거하세요?

한 가지 가능한 해결책은 지시문을 만들고 DOM 속성 "onsubmit"을 재정의하는 것입니다. 당신이 ng-submit 전에 action 컴파일됩니다 제거 할 경우 단지를 만들고, 각 속성을 미리

+0

당신이하려는 일이 명확하지 않습니다. 'ng-submit'은 정규 양식 제출 대신 사용자 정의 코드를 수행 할 수있는 방법을 제공합니다. 같은 '

'에'action' 속성을 정의하지 않아도됩니다. – hon2a

+1

환경에서 나는 [action] 속성을 사용하여 이미 만든 양식을 작업하고 있으며 HTML에서 수동으로 제거 할 수 없습니다. 내가 알고있는 것은 이상하지만, 그것이 무엇인지 알 것입니다. 나는 OP를 갱신 할 예정이다. 감사! –

+0

'ng-submit' 지시어를 요소에 추가 할 수 있다면 어떻게'action' 속성을 제거 할 수 없습니까? – hon2a

답변

2

에서

app.directive("contactForm", function(){ 

     return { 
      link: function(scp, elm, att) 
      { 
       elm[0].onsubmit = function(evt) 
       { 
                                                                       /* your custom code here */ 
       } 
      } 
     }; 
    }); 

감사를 사용하여 동일한 도달 할 수있을 때 이곳의 단점은 당신이 백엔드를 구성하도록 강요한다 우선 순위가 높은 지시문은 속성을 제거합니다.

+0

"우선 순위"를 인식하지 못했습니다. 그것은 나에게 좋게 보인다, 나는 지금 그것을 시험 할 것이다. 감사합니다 –

+0

왜 나는 당신이 형제 자매로 아닙니다 컴파일러 안쪽에 연결 기능을 두는 지 질문 할 수 있습니까? –

+1

[문서를 참조하십시오.] (https://docs.angularjs.org/api/ng/service/$compile) ('link' config는'compile '이 정의되면 사용되지 않습니다.) – hon2a

0

그래서 나는 비슷한 문제를 겪고 있었고 마침내 어떻게 해결 했는가? AngularJS와 1.2

, 그것은 자바 스크립트 :; '

AngularJS와 1.3

, 당신이

행동 =처럼 뭔가 조치를 설정해야' '= 빈

행동 조치를 설정하는 데 충분 '

유효한 html 또는 모범 사례인지 확실하지 않지만 작동하지 않습니다.