2016-06-13 2 views
0

Jquery ajax를 처음 사용하고 있으며 전체 양식을 제출하는 대신 특정 필드를 제출하기 위해 노력하고 있습니다. 여기에 내가 사용할 수있는 사용자 이름을 확인하는 함수를 만들었고, 잘 작동하지만, 검사를 할 때 전체 양식을 제출하는 것을 원하지 않습니다. 한마디로Ajax 특정 필드 제출

<form id="userCheck"> 
<input type="text" class="register_field" name="fr_username" id="fr_username" /> 
<input type="text" class="register_field" name="fr_password" id="fr_password" /> 
<input type="text" class="register_field" name="fr_password1" id="fr_password1" /> 
</form> 

<script> 
$.validator.addMethod("duplicateCheck", function(value, element) { 
      $.ajax({ 
     type: 'POST', 
     url: '../a/checkDuplicate', 
     data: $("#userCheck").serialize(), 
     dataType: 'json' 
    }).success(function(data){ 
     if(data.status == '1'){ 
      console.log('Available!'); 
     } 
     else { 
      console.log('not available'); 
      $('#fr_dupChkU_msg').html(''); 
     } 
    }); 
     }); 
</script> 
+1

은 그냥 아약스 호출에 사용자 이름 필드 데이터를 넣어 여기에

내 스크립트입니다 데이터 필드. – Jurik

+0

@Jurik 시도했지만 빈 값으로 제출합니다. – MuthaFury

+0

코드가 표시됩니다 ... 자바 스크립트 오류로 종료되어야합니다. – Jurik

답변

1

, 당신이 jQuery를 함께 입력 필드의 값을 얻는 방법 즉 :

<script type="text/javascript"> 
    var username = $('#fr_username').val(); 

    $.validator.addMethod('duplicateCheck', function(value, element) { 
      $.ajax({ 
     type: 'POST', 
     url: '../a/checkDuplicate', 
     data: {username: username}, 
    }).success(function(data){ 
     if(data.status == '1'){ 
      console.log('Available!'); 
     } 
     else { 
      console.log('not available'); 
      $('#fr_dupChkU_msg').html(''); 
     } 
    }); 
     }); 
</script> 
+0

슬픈 듯이 내가 예상 한대로 당신의 지시를 따랐습니다. 제출을 비운다. http://prntscr.com/bfs1be – MuthaFury

+0

'비어있는 제출'이란 무엇을 의미합니까? 네트워크 트래픽을 우리에게 알려줄 수 있습니까? 어떤 데이터가 서버로 전송 되었습니까? – Jurik

+0

이전 메모에서 첨부 한 스크린 샷을 참조 할 수 있습니다 – MuthaFury