2016-06-25 2 views
-2

나는이 코드를 사용하여 이전에 데이터베이스에있는 사용자 이름을 확인합니다. 코드가 잘 작동하고 사용 가능한 또는 사용 된 사용자 이름이 표시됩니다. 지금 내가 제출하고자하는 버튼은 사용자가 befor를 취하여 사용자 이름을 사용할 수있게 할 때 사용자 이름을 선택할 때 비활성화되어야합니다. 방법을 안내해주세요. jQuery를의ajax를 사용하여 사용자 이름 확인

$(document).ready(function() { 
    $('#username').keyup(function() { 
     $.post('adm/chk_uname_avail.php', { 
      uname : changeuser.username.value 
     }, function(result){ 
      $('#available').html(result); 
     }) 
    }) 
}) 
+0

'의 S (BTN) .attr (장애인, 장애인)' –

답변

0

사용 .attr() 방법은 특정 조건에 장애인 제출 확인합니다.

그래서 당신은

$.post('adm/chk_uname_avail.php', { 
     uname : changeuser.username.value 
    }, function(result){ 
     $('#available').html(result); 
     if(/* CHECK FOR CERTAIN CONDITION */) { 
      $('#submit_btn').attr('disabled','disabled'); 
     } 
    }); 

disabled 당신이 jQuery를의 방법을 사용할 수 있습니다 속성을 제거하려면 다음과 같이 당신의 jQuery를 업데이트 할 수 있습니다. 이처럼

$('#submit_btn').removeAttr('disabled'); 

http://api.jquery.com/attr/

https://api.jquery.com/removeAttr/

+0

친애하는 알록, 내 문제가 얼마나 사용 조건을 가능하게 달성하기 위해 코드에서 또는 제출 버튼을 사용 중지합니다. 코드 if ($ ('# available') .html (result)) { $ ('# submitbtn'). attr ('disabled', 'true'); } else { $ ('# submitbtn'). attr ('disabled', 'false'); }'가 작동하지 않습니다. 위의 코드 – unforgiven

+0

은 사용 가능한 사용자 이름과 촬영 된 사용자 이름 모두에 대해 제출 버튼을 사용 중지합니다. 그래서 사용자 이름을 사용할 수있는 경우 데이터베이스에 저장 버튼을 제출할 수 없습니다. – unforgiven

1

나는 이전 $.ajax 기능을 사용하고 데이터가 adm/chk_uname_avail.php에 부울 유형 (예를 들어) taken을 키가 있는지 확인하고 있음을 알 수있어 JSON 데이터 형식을 반환해야합니다.

adm/chk_uname_avail.php

<?php 
//return response as JSON 
header('Content-type:application/json;charset=utf-8'); 

.... 
.... 
.... 

$data['taken'] = true; //show this response to ajax 
echo json_encode($data); 

?> 

의 아약스

$(document).ready(function() { 
    $('#username').on('keyup', function() { 
     $.ajax({ 
      type: 'POST', 
      url: 'adm/chk_uname_avail.php', 
      data: {uname : changeuser.username.value}, 
      success: function(result) { 
       var $btn = $('#submiButton'); 
       if (result.taken) { 
        $btn.prop('disabled', true); 
       } else { 
        $btn.prop('disabled', false); 
       } 
       //As @Mikey notice, You can just use this as simply as 
       //$('#submiButton').prop('disabled', result.taken); 
      }   
     }); 
    }); 
}); 
+1

'$ ('# submitButton'). prop ('disabled', result.taken);를 수행하여 성공 처리기를 단순화 할 수 있습니다. OP는 HTML 대신 JSON을 반향시켜야한다고 언급하는 것이 중요하다고 생각합니다. PHP. – Mikey

관련 문제