셀렉트박스로 분류후 검색하는 방법이 있을까요? 채택완료
메인페이지에 search 박스를 만들어 두었습니다.
<div id="search"> <h2>커뮤니티</h2><p class="h2p">PL Community</p> <fieldset id="hd_sch"> <legend>사이트 내 전체검색</legend> <select name="sfl" id="sfl"> <option value="wr_subject||wr_content"<?php echo get_selected($_GET['sfl'], "wr_subject||wr_content") ?>>제목+내용</option> <option value="wr_subject"<?php echo get_selected($_GET['sfl'], "wr_subject") ?>>제목</option> <option value="wr_content"<?php echo get_selected($_GET['sfl'], "wr_content") ?>>내용</option> <option value="mb_id"<?php echo get_selected($_GET['sfl'], "mb_id") ?>>회원아이디</option> <option value="wr_name"<?php echo get_selected($_GET['sfl'], "wr_name") ?>>이름</option> </select> <form name="fsearchbox" method="get" action="<?php echo G5_BBS_URL ?>/search.php" onsubmit="return fsearchbox_submit(this);"> <input type="hidden" name="sfl" value="wr_subject||wr_content"> <input type="hidden" name="sop" value="and"> <label for="sch_stx" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label> <input type="text" name="stx" id="sch_stx" maxlength="20"> <input type="submit" id="sch_submit" value=""> </form> <script> function fsearchbox_submit(f) { if (f.stx.value.length < 2) { alert("검색어는 두글자 이상 입력하십시오."); f.stx.select(); f.stx.focus(); return false; } // 검색에 많은 부하가 걸리는 경우 이 주석을 제거하세요. var cnt = 0; for (var i=0; i<f.stx.value.length; i++) { if (f.stx.value.charAt(i) == ' ') cnt++; } if (cnt > 1) { alert("빠른 검색을 위하여 검색어에 공백은 한개만 입력할 수 있습니다."); f.stx.select(); f.stx.focus(); return false; } return true; } </script> </fieldset> </div> </div> <!-- search_box 끝 -->
중간에 셀렉트 박스를 넣어놨습니다.
검색을 하게되면 search.php에 기본으로 제목+내용 분류로 뜨는데
메인에서 바로 분류해서 검색하면 search.php 에서도 분류된 검색상태로 보고싶으나
제 실력이 부족한터라 어떻게 해결해야 할지 막막합니다 어떻게 하면 될까요?
답변 1개
13번째줄 에서 sfl의 값이 "wr_subject||wr_content"로 전달 되기 때문에
제목+내용으로 selected 되는 거에요.
//////////////////////////////////////////////////////////////////
<input type="hidden" name="sfl" value="wr_subject||wr_content">
//////////////////////////////////////////////////////////////////
이거를 지우구여,
12번째줄의 form 문을 5번째줄(select 창 위로)로 옮겨주세요.
//////////////////////////////////////////////////////////////////
<form name="fsearchbox" method="get" action="<?php echo G5_BBS_URL ?>/search.php" onsubmit="return fsearchbox_submit(this);">
//////////////////////////////////////////////////////////////////
아니면 jquery로 하셔도 될거 같아여,
13째줄의 input 창에 id="sql_2"로 주시고
//////////////////////////////////////////////////////////////////
<input type="hidden" name="sfl" id="sql_2" value="wr_subject||wr_content">
//////////////////////////////////////////////////////////////////
<script>
$('#sfl').change(function(){
var sql_select=$("#sql option:selected").val();
$("#sfl_2").val(sql_select);
});
</script>
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
$('#sfl').change(function(){
var sql_select=$("#sfl option:selected").val();
$("#sql_2").val(sql_select);
});
</script>
오타가 좀 있어서 이렇게 해서 했더니 성공했습니다 정말 감사합니다