2014-11-09 4 views
1

오늘 jQuery를 배웠습니다.jQuery 게시물이 리디렉션되는 페이지

<script>  
$('#mc-embedded-subscribe-form').on('submit', function(e){ 
e.preventDefault(); 
email=document.mc-embedded-subscribe-form.EMAIL.value; 
$.post("email.php", {email}); 
$('#fadeout').fadeOut(500); 
$('#fadein').delay(500).fadeIn(500); 
}); 
</script> 

이것은 사용자가 양식을 제출할 때 실행되는 스크립트입니다. 내가 가지고있는 문제는 양식을 제출하자마자 email.php로 리디렉션되는 반면 초기 웹 페이지에 머물고 싶다는 것입니다. 줄을 제거하면

$.post("email.php", {email}); 

나머지는 예상대로 작동합니다. email.php는 잘 작동하지만 이메일을 저장하기 만하면됩니다. 리디렉션을 중지하려면 어떻게해야합니까?

+0

http://stackoverflow.com/questions/19454310/stop-form-refreshing-page-on-submit – mgibala

+0

브라우저의 오류 항목을 찾으십시오. –

답변

1

오류가 e.preventDefault()가에서 발로되지 않는 당신의 $.post() 라인에 거기 때문에 다음 코드를 편집합니다.

$('#mc-embedded-subscribe-form').on('submit', function(e){ 
    e.preventDefault(); 
    email = $('[name=EMAIL]',this).val(); 
    $.post("email.php", {email:email}, function() { 
     $('#fadeout').fadeOut(500); 
     $('#fadein').delay(500).fadeIn(500); 
    }); 
}); 
+0

감사합니다 -이 질문의 정신에 있다고 느꼈고 오류를 지적했다. – Shakespeare

1

당신은 그것의 더 나은 사용하는 것보다 서버에 클라이언트 측에서 특정 값을 게시 할 경우 $ 아약스 방법 다음 $ .post 예 : 페이지의 재 지정없이 서버 측에

<script>  

    $('#mc-embedded-subscribe-form').on('submit', function(e){ 
    e.preventDefault(); 
    email=document.mc-embedded-subscribe-form.EMAIL.value; 
    $.ajax({ 

     url:"email.php"; 
     data: email; 
     success:function(){ 
      $('#fadeout').fadeOut(500); 
      $('#fadein').delay(500).fadeIn(500); 
     } 

    }); 

}); 
</script> 

$ 아약스 후 특정 값 또는 값.

관련 문제