2017-02-17 1 views
0

나는 이상한 문제로 인해 나를 미치게 만듭니다! jquery-form 버전 3.46.0을 사용하여 HTML 양식을 제출하고 서버에서 POST 데이터를 가져오고 싶지만 제출 단추의 이름이 POST 데이터에 표시되지 않습니다! 아마도이 라이브러리에 문제가있을 수 있습니까?jquery-form을 사용할 때 제출 버튼 이름이 양식 제출시 게시되지 않습니다.

이 내 코드 :

<form id="form" action="test.php" method="post"> 
    <input name="email" type="email" placeholder="Email" required> 
    <!-- And yes! I didn't use an input with type submit because 
    I need my button to have some HTML content and applied css styles to them. --> 
    <button id="submit" type="submit" name="myFormName"> 
    <span class="label">Submit</span> 
    </button> 
</form> 
<div id="formResult" style="display: block; margin: 20px 0; padding: 10px; background-color: #fbe6e6;" role="alert"></div> 

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script src="//oss.maxcdn.com/jquery.form/3.50/jquery.form.min.js"></script> 
<script> 
    jQuery(document).ready(function($) { 

    $('#submit').on('click', function(e) { 
     e.preventDefault(); 

     $('#form').ajaxSubmit({ 
     clearForm: true, 
     target: '#formResult', 
     success: function() { 
      // do sth 
     }, 
     error: function() { 
      // do sth 
     } 
     }); 
    }); 
    }); 
</script> 

그리고 이것은 test.php 파일입니다

<?php 
var_dump($_POST); 

내가 예상대로 서버에 POST 데이터에 표시 내 제출 버튼의 이름이 필요합니다 ... 그러나 그렇지 않습니다! 아무나 아이디어있어?

+0

내 옆에 어떤 문제도 보이지 않습니다. 버튼에 spining icon이 있습니다. test.php는 입력 한 이메일을 보여줍니다. –

+0

버튼 이름 만 지우십시오. name = "myFormName"' – Nawin

+0

물론 test.php는 입력되었지만 POST 데이터에 포함 된 제출 버튼의 이름은 표시되지 않습니다. 내가 무슨 뜻인지 알지? – Ali

답변

0

버튼에 name을 사용하면 $ _POST를 사용하는 동안 값이 게시물 데이터로 표시됩니다. 대신 이름을 사용하는 ID를 사용하여 시도하거나 당신이

-1
<div><a href="javascript:foo1()"> 
<div class="holder"><span class="label">Submit</span></div> 
<div class="loader"><i class="fa fa-circle-o-notch fa-spin"></i></div></a></div> 

의 사용을 그리고 foo1은 구현하지 않는 경우 양식을 제출하는 것을 제거합니다.

+0

해결 방법이 있습니다. 그러나이 해결책은 꽤 아니지만 ... – Ali

관련 문제