$("button").click(function() 이벤트 질문 있습니다. 채택완료

Copy
<form id="RUShopOrderFrm" action="링크" target="hiddenframe" method="POST" onSubmit="return false"> <button type="button" class="btn btn-lg bcolor_b shop_bt2"  title="결제하기" onclick="RUShopOrder.pay()">결제하기</button>  // 여기서 버튼 클릭하기 생략... <div id="div1"></div></form> <script type="text/javascript"> var RUShopOrder = function() {   생략...  pay = function() {		var valid     = frm.validator();		var formdata = frm.serialize();if(!valid) return false;		$J("button").click(function(){                alert("test");    //여기 찍어보니 버튼 2번째 눌으때 나옵니다. 그것도 모아서 2번 ㅠㅠ                $J("#div1").load("링크/payment_exec.php", formdata , function(){                }); 		 });}</script>

보시면 제이쿼리 버튼 이벤트 입니다.

버튼 클릭하면 해당되는 load값을 불러오게 되는데요

문제는 한번 클릭하게 되면 반응이 없다가

두번째 클릭할때 반응이 나오네요

그것도 2번 연속으로ㅠㅠ 모아서 기쓰나? ㅡㅡ;

이렇게 왜 그런건지 ㅠㅠ

답변 부탁드립니다.

답변 2개

채택된 답변
+20 포인트

onclick="RUShopOrder.pay()" 

위의 내용을 삭제하시고, 스크립트 가장 아래 아래 코드로 변경하시면 될 것 같습니다.

varRUShopOrder = function() { 

pay = function() {

}

}​

$(function(e) { //document ready 시에 위 스크립트 실행

RUShopOrder.pay()​;

});

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

<button type="button" class="btn btn-lg bcolor_b shop_bt2"  title="결제하기" onclick="RUShopOrder.pay()">결제하기</button>

여기에서 이미 onclick으로 pay()를 호출하는 거 같은데 왜 그 안에서 다시 button을 클릭했을 때라는 조건을 달았는지 모르겠네요.

역전 앞이 아닌가 싶네요.

$J("button") 얘로 싸고 있는 부분 제거하고 실행해 보세요. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

버튼 이벤트 한후 load 이벤트 한후 frm.submit();로 이벤트 처리해야 하기 때문에.. 어쩔수 없이 pay()함수 안에 했던것입니다. 방법이 없는지..ㅠ.ㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고