view.skin.php 에서 JQuery ajax 사용하기
본문
글보기 페이지에서 평가 기능을 구현하려고 합니다.
평가 버튼과 JQuery 코드가 아래와 같이 되어 있는데 작동하질 않습니다.
클릭을 해도 아무런 반응이 없습니다.
몇몇 생소한 변수들은 모두 구현되어 있는 것들입니다.
guest_cant 조건문은 작동하는데, 그 다음 ajax 부분은 작동하질 않습니다.
도움 부탁드립니다.
평가 버튼
<div id="bo_v_act">
<select class="it_review" id="it_review">
<option selected="selected" value="">점수</option>
<?php for($i=$view['it_wr_rvp_min']; $i<=$view['it_wr_rvp_max']; $i++) {?>
<option value='<?php echo $i;?>'><?php echo $i;?>점</option>
<?php } ?
</select>
<button type='button' class='review_btn' id='review_btn'>평점주기</button>
<div>
JQuery 코드, 기존의 $()(function(){}에 포함
$('.review_btn').click( function() {
var guest_cant = <?echo $is_guest && $board['it_bo_rv_level']>1 ?>;
if (guest_cant) {
if (confirm("회원가입 후 평가 할 수 있습니다.\n\n회원가입 페이지로 이동하시겠습니까?")) {
window.location = '<?php echo G5_URL?>/bbs/register.php';
}
return;
}
if($('.it_review').val()) {
var ajax_url = "<?php echo $board_skin_url?>/review.ajax.php";
var rvp = $('.it_review').val();
$.ajax({
async: false,
cache: false,
type: 'POST',
url: ajax_url,
data: {
"mb_id": "<?php echo $member['mb_id']; ?>",
"ip": "<?php echo $_SERVER['REMOTE_ADDR'];?>",
"bo_table": "<?php echo $bo_table; ?>",
"wr_id": "<?php echo $wr_id; ?>",
"rvp": rvp,
},
success: function(data, textStatus) {
alert(data);
location.reload(true);
}
});
}
})
.change();
답변 2
저는 ajax값이 가고안가고를 firefox에서 파이어버그로 값이 넘어가는지 안넘어가는지를
확인합니다. ajax확인하는 제일 좋은 방법인거같네요.
view페이지에서 제가 짰던건데 변형해 던져 보세요. 에러 체크해 보시구요.
<script type="text/javascript">
$(document).ready(function(){
var z2 = <?=$view[wr_id]?>;
$("#wr_361").click(function(){
ajaxfunc('0',z2);
});
$("#wr_362").click(function(){
ajaxfunc('2',z2);
});
$("#wr_363").click(function(){
ajaxfunc('1',z2);
});
function ajaxfunc(z1,z2){
$.ajax({
url:"<?=$board_skin_path?>/treat_modi.php",
type:'post',
timeout:5000,
data:"a="+z1+"&b="+z2,
cache: false,
error:function(){
alert('네트워크가 불안정합니다.');
},
success:function(data){
alert(data);
}
}); //ajax
}
});
</script>