-
자바스크립트 사업자등록번호 조회하기 ajax doneWeb Programming 2023. 2. 10. 22:53728x90반응형
<tr> <th>사업자 등록번호</th> <td class="left"> <input type="text" name="saupNum1" id="saupNum1" value="" numberOnly title="시업자 등록번호" maxlength='3'/> <input type="text" name="saupNum2" id="saupNum2" value="" numberOnly title="시업자 등록번호" maxlength='2'/> <input type="text" name="saupNum3" id="saupNum3" value="" numberOnly title="시업자 등록번호" maxlength='5'/> <input type="hidden" name="saupNumCheck" id="saupNumCheck" value="N" /> <button type="button" onclick="javascript:saupjaNumCheck();" class="button01">사업자 등록번호 인증 체크</button> </td> </tr>
사업자등록번호 체크 - 공공데이터 포털 api 이용
// 사업자 번호 체크 var saupNum = ""; function saupjaNumCheck(){ saupNum = $('#saupNum1').val()+$('#saupNum2').val()+$('#saupNum3').val(); var data = { "b_no": [saupNum] // 사업자번호 "xxxxxxx" 로 조회 시, - 없어야함 }; var saupNumCheck = $('#saupNum1').val()+"-"+$('#saupNum2').val()+"-"+$('#saupNum3').val(); $.ajax({ type : "POST", url : "<c:url value='/dbChekcFirstUrl.do'/>", data : { 'saupNumCheck' : saupNumCheck }, success : function(data) { if(data >= 1){ alert("이미 등록된 사업자 등록 번호입니다. 회원가입 여부 확인 바랍니다."); $('#saupNumCheck').val("N"); }else if(data == 0){ $('#saupNumCheck').val("Y"); } }, error:function(request,status,error){ alert("시스템상 오류입니다. 관리자에 문의해주세요."); $('#saupNumCheck').val("N"); } }).done(function(){ if($('#saupNumCheck').val() == 'Y'){ $.ajax({ url: "https://api.odcloud.kr/api/nts-businessman/v1/status?serviceKey=서비스키!!!!", // serviceKey 값을 xxxxxx에 입력 type: "POST", data: JSON.stringify(data), // json 을 string으로 변환하여 전송 dataType: "JSON", contentType: "application/json", accept: "application/json", success: function(result) { if(result.data[0].b_stt_cd == ""){ alert("국세청에 등록되지 않은 사업자등록번호입니다. 입력한 번호 재확인 바랍니다."); $('#saupNumCheck').val("N"); }else if(result.data[0].b_stt_cd == "02"){ alert("국세청에 휴업자로 등록되어 있습니다. 입력한 번호 재확인 바랍니다."); $('#saupNumCheck').val("N"); }else if(result.data[0].b_stt_cd == "03"){ alert("국세청에 폐업자로 등록되어 있습니다. 입력한 번호 재확인 바랍니다."); $('#saupNumCheck').val("N"); }else if(result.data[0].b_stt_cd == "01"){ var resultNum = result.data[0].b_no; if(resultNum != "" && saupNum == resultNum){ alert("인증된 사업자 등록 번호입니다. 회원가입을 계속 진행해 주세요."); $('#saupNumCheck').val("Y"); } } }, error: function(result) { alert("인증되지 않은 사업자 등록 번호입니다. 재확인 바랍니다."); $('#saupNumCheck').val("N"); } }); } }) }
공공데이터 api 호출 전에 데이터에 등록하려는 사업자번호가 있는지 dbChekcFirstUrl.do 로 먼저 검증 후
중복된 게 없으면 api 호출 !
무조건 등록 전에 검증이 필요했기에 ajax를 두번사용했어야 했고
두번 사용하기 위해서 ajax done 을 사용 !!
만약 ajax 두번 사용하려고 ajax , ajax 사용하면 무한 반복에 빠질 수 있음. 절대 사용 X
$('#saupNumCheck').val("N"); 처럼 input에 hiddne 값 변화를 줘서 상황에 따라 체크 !!
공공데이터 api 링크 : 공공데이터포털 (data.go.kr)
728x90반응형'Web Programming' 카테고리의 다른 글
디비에버 설치 (0) 2023.02.10 이클립스 단축키 모음 (0) 2023.02.10 자바스크립트 input 빈 값 체크하기 (0) 2023.02.10 자바스크립트 자식 또는 하위 찾기 children (0) 2023.02.10 자바스크립트 innerHTML (0) 2023.02.10