체크박스로 stx 추가하여 검색할 수 있는 방법 부탁드립니다. > 그누4 질문답변

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

체크박스로 stx 추가하여 검색할 수 있는 방법 부탁드립니다. 정보

체크박스로 stx 추가하여 검색할 수 있는 방법 부탁드립니다.

본문

저 아래에 체크박스 검색 문의를 드린 후, 해법을 찾은 것 같긴한데, 어떻게 구현을 해야할지 몰라 다시 문의글 올립니다.

결론만 먼저 말씀드리면, 체크박스를 클릭하여 stx 값을 추가하는 방법을 찾는 것입니다.

아래 올렸던 내용입니다.

<form name="fsearch" method="get">
<table width="100%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td><input type="checkbox" onClick="this.form.sfl.value='wr_7';this.form.stx.value='info_00';"> 분류 1</td>
<td><input type="checkbox" onClick="this.form.sfl.value='wr_7';this.form.stx.value='info_01';"> 분류 2</td>
<td><input type="checkbox" onClick="this.form.sfl.value='wr_7';this.form.stx.value='info_02';"> 분류 3</td>
</tr>
<tr bgcolor="#FFFFFF">
<td><input type="checkbox" onClick="this.form.sfl.value='wr_7';this.form.stx.value='info_03';"> 분류 4</td>
<td><input type="checkbox" onClick="this.form.sfl.value='wr_7';this.form.stx.value='info_04';"> 분류 5</td>
<td><input type="checkbox" onClick="this.form.sfl.value='wr_7';this.form.stx.value='info_05';"> 분류 6</td>                 
</tr>
</table>                               
<input type="image" src="<?=$board_skin_path?>/img/btn_search.gif" border='0' align="right">         
<input type="hidden" name="sop" value="and">
</form>

3) 리스트페이지 (list.skin.php)에서 체크박스에 체크를 하고 검색을 하면, 맨 마지막에 체크된 값만 검색이 되고 있습니다. 예를 들어, 분류 1, 분류 3, 분류 4를 체크하면 분류 4만 검색이 되는 것이지요.
4) 분류 1, 분류 3, 분류 4를 체크했을 때,  분류 1, 분류 3, 분류 4에 '모두' 해당하는 결과값이 검색되려면 어떻게 해야하는 것인지요??

** 3)번 항은 onClick을 쓴 탓이라는 결론을 얻었습니다.
** 4)번 항은 주소창으로 아래와 같이 해보니 작동을 하였습니다.
    ...board/bbs/board.php?bo_table=test&sfl=wr_7&stx=info_00+info_03+info_06
 
    즉, stx 값이 + 로 연결되기만 하면 되는 것이었습니다.

** 문제는 제가 여기서 막혔다는 것이지요...
    자바스크립을 써서 stx 값을 추가하게끔만 하면 될 것 같은데, 종일 소스를 찾아봐도 헤메이기만 하네요.
도움을 부탁드리며 다시 문의글 올려봅니다. 감사합니다.

댓글 전체

<form name="fsearch" method="get">
<input type="hidden" name='sfl' value='wr_7'>
<input type="hidden" name='stx' value=''>
<input type="checkbox" name='info0' value='info_00'> 분류 1
<input type="checkbox" name='info1' value='info_01'> 분류 2
.
.
</form>
<a href='javascript:go_search()'><img src='이미지'></a>         

폼형식을 일단 위와같이 간단하게 만드세요
그리고 아래 함수 추가
<script>
function go_search(){
wfm=document.fsearch;
$stx=deli=''
if(wfm.info0.checked){ $stx =wfm.info0.value; deli=' ';}
if(wfm.info1.checked){ $stx +=deli+wfm.info1.value; deli=' ';}
.
.
if(!stx){ alert('검색어를 입력하세요'); return;}
wfm.stx.value=stx;
wfm.submit();
}
</script>

이렇게 하면 되겟는데 검색 후 체크한 것은 체크박스에 자동으로 체크가
붙어나오도록 하려면 복잡해지네요
균이님, 감사합니다.

적어주신대로 모두 수정했습니다만, 스크립트 오류가 나고 있답니다.

'wfm.info0.checked'은(는) null 이거나 개체가 아닙니다.

스크립은 아래처럼 했습니다.

<script>
function go_search(){
wfm=document.fsearch;
$stx=deli=''
if(wfm.info0.checked){ $stx =wfm.info0.value; deli=' ';}
if(wfm.info1.checked){ $stx +=deli+wfm.info1.value; deli=' ';}
if(wfm.info2.checked){ $stx +=deli+wfm.info2.value; deli=' ';}
if(wfm.info3.checked){ $stx +=deli+wfm.info3.value; deli=' ';}
if(wfm.info4.checked){ $stx +=deli+wfm.info4.value; deli=' ';}
if(wfm.info5.checked){ $stx +=deli+wfm.info5.value; deli=' ';}

if(!stx){ alert('검색어를 입력하세요'); return;}
wfm.stx.value=stx;
wfm.submit();
}
</script>

제가 적용을 잘못한 것인지...
아이쿠 죄송 php 프로그램 하던 버릇이 되놔서 $stx -->stx 로 고치세요

아래 코드 복사헤서 테스트 해보세요
  <form name="fsearch" method="get">
<input type="hidden" name='sfl' value='wr_7'>
<input type="hidden" name='stx' value=''>
<input type="checkbox" name='info0' value='info_00'> 분류 1
<input type="checkbox" name='info1' value='info_01'> 분류 2
</form>

<a href='javascript:go_search()'><img src='이미지'></a>         

<script>
function go_search(){
wfm=document.fsearch;
stx=deli=''
if(wfm.info0.checked){ stx =wfm.info0.value; deli=' ';}
if(wfm.info1.checked){ stx +=deli+wfm.info1.value; deli=' ';}
alert(stx)
if(!stx){ alert('검색어를 입력하세요'); return;}
wfm.stx.value=stx;
wfm.submit();
}
</script>
다시 수정해주셨네요.
균이님, 감사합니다.

하지만 수정해서 테스트를 해봐도 여전히 같은 스크립트 오류가 나고 있답니다.

'wfm.info0.checked'은(는) null 이거나 개체가 아닙니다.

이것저것 조금씩 수정해봐도 여전히 같은 결과여서...
염치없지만 다시 한번 확인 부탁드려봅니다.
전체 16 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT