자바스크립트 변수 초기화 질문입니다
본문
<?php for($i=1;$i<=64;$i++) //변수선언
{
$main_it_[$i] = explode('/', $it['it_'.$i]); // $main_it_[$i] Sperator "/" -> $main_it_[$i][0] : 첫번째 값 , $main_it_[$i][1] : 두번째 값
}
?>
<?php for($i=1;$i<=40;$i++){?>
<?php if($it['it_'.$i.'_subj']){?>
<tr>
<td style = "padding:5px ;text-align:center; width:30% ; border-bottom:1px solid #e5e5e5"><?php echo $it['it_'.$i.'_subj']?></td>
<td style = "padding:5px ;text-align:center; width:50% ; border-bottom:1px solid #e5e5e5"><?php echo $main_it_[$i][0]?></td>
<td style = "padding:5px ;text-align:right; width:20% ; border-bottom:1px solid #e5e5e5"><label for="modal" class="button" onclick="openModal('<?php echo $main_it_[$i][0]?>', '<?php echo $add[$main_it_[$i][0]];?>', '<?php echo $main_it_[$i][1];?>')">설명보기</label></td> //
</tr>
<?php }}?>
//HTML
<input type="checkbox" id="modal" class="hidden"> <!--Modal Content-->
<div class="box_modal" style="z-index: 999">
<label for="modal" class="closer">x</label>
<div class="text">
<h3 id="modalTitle"></h3> <!--여분필드 value output-->
<p id="modalText"></p> <!--add Array output-->
<br />
<?php for($i=1;$i<=64;$i++){
if(isset($main_it_[$i][1])){?> // isset($main_it_[$i][1]) 값이 존재하면 출력
<p style = "padding:2px 1px;color:#a1a1a1;font-size : 12px" id="modalRemark"></p>
<?}}?>
</div>
</div>
//script
function openModal(modalTitle, modalText, modalRemark){
$("#modalTitle").text(modalTitle);
$("#modalText").text(modalText);
if(modalRemark){
$("#modalRemark").text("두번째 값 : "+ modalRemark);
}
}
</script>
$main_it_변수에 값이 있으면 modalRemark 부분이 출력되는건데
출력은 다 잘되는데 modalRemark 값이 초기화가 안되서 그런지 $main_it_에 값이 없어도 저번에 저장된 값이 출력됩니다..
그래서 html에 $main_it_변수에 값이 있으면 p태그가 출력되게 했는데 증상은 같네요
어떻게 해결할 수 있을까요..
!-->답변 1
openModal(modalTitle, modalText, modalRemark) 함수에서 modalRemark 이건 '' 로 전달 되었을 겁니다 if(modalRemark){ //이부분은 해당 변수가 null 인지 체크합니다 $("#modalRemark").text("두번째 값 : "+ modalRemark); }
'' 은 null 이 아닙니다
if(modalRemark){ -> if(modalRemark == ''){ 이렇게 한번 해보세요
답변을 작성하시기 전에 로그인 해주세요.