묻고답하기
메인페이지에서 통합검색 말고 게시판 검색하기
2017.10.25 18:14
xe의 입문자입니다.
제가 로직을 짜려는게 게시판에서 검색하면 해당 게시판에서의 글 중에 포함된걸 가져오는것을 메인페이지에서도 하고싶습니다.
현 페이지는 메인페이지에서 통합검색만 되는데 그것말고 아래의 사진과같이 select를 둬서 '이름' 을 선택하고 검색어를 작성하면 통합검색 말고 '이름' 이라는 게시판으로 이동해서 검색키워드에 맞게 나오게 하고싶습니다.
저의 생각으로는 메인 페이지에서 submit 될 때 '이름'이라는 페이지에서 submit 될 때의 함수를 실행하면 될꺼같은데
도통 xe는 그런 함수가 어디있는지 잘 모르겠네요..
고수분들 부탁드립니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
<form action="{getUrl()}" method="get" onsubmit="return procFilter(this, search)" no-error-return-url="true">
<input type="hidden" name="vid" value="{$vid}" />
<input type="hidden" name="mid" value="{$mid}" />
<input type="hidden" name="category" value="{$category}" />
<table class="bd_tb">
<tr>
<td style="width:30%;">
<span class="select itx">
<select name="search_target">
<option value="title">기업명</option>
<option value="title">이름</option>
<option value="title">숙소명</option>
<option value="tag">태그</option>
</select>
</span>
</td>
<td class="itx_wrp">
<input type="text" name="search_keyword" value="{htmlspecialchars($search_keyword)}" class="itx srch_itx" placeholder="키워드 1개만 검색할 수 있습니다." />
</td>
<td>
<button type="submit" onclick="jQuery(this).parents('form').submit();return false" class="bd_btn">{$lang->cmd_search}</button>
<a cond="$last_division" class="bd_btn" href="{getUrl('page',1,'document_srl','','division',$last_division,'last_division','')}">{$lang->cmd_search_next}</a>
</td>
</tr>
</table>
</form>
|
cs |
위가 코딩이구요
제가 이거를 그냥 메인 레이아웃에 때려박았더니 위에 사진처럼 검색창은 뜨는데 당연히 검색은 안되구요.
<!-- @if 로 option이 뭐일떄 submit이 달라지게 할 수 있는지 아니면 꼼수가있는지.. 부탁드립니다!
- [2017/04/24] 묻고답하기 게시판 본문에 HTML 특정 부분이전이 잘려서 View가 됩니다.
- [2017/02/04] 묻고답하기 내용 직접 추가에서 html... *1
- [2015/05/08] 묻고답하기 레이아웃 몸통 늘리기 좀 도와주세요
댓글 4
-
sejin7940
2017.10.26 12:26
-
김태근
2017.10.26 16:34
답변 감사드립니다! mid부분을 언급해주셔서 mid가 뭔가 찾아보다가 해답을 찾게되었네요 ㅎㅎ 감사합니다.
-
김태근
2017.10.26 16:52
해결했습니다.
xe가 검색할 때 어떤 구조인지는 모르겠지만;
1234567891011121314151617181920212223242526<form action="/company" method="get" onsubmit="return procFilter(this, search)" no-error-return-url="true" id="getUrl"><input type="hidden" name="vid" value="{$vid}" /><input type="hidden" name="mid" value="company" id="mid"/><input type="hidden" name="category" value="{$category}" /><table class="bd_tb"><tr><td style="width:30%;"><span class="select itx"><select name="search_target" id="selectSearch"><option value="title" id="company">기업명</option><option value="title" id="name">이름</option><option value="title" id="house">숙소명</option><!--<option value="tag" id="tag">태그</option>--></select></span></td><td class="itx_wrp"><input type="text" name="search_keyword" value="{htmlspecialchars($search_keyword)}" class="itx srch_itx" placeholder="키워드 1개만 검색할 수 있습니다." /></td><td><button type="submit" onclick="jQuery(this).parents('form').submit();return false" class="bd_btn">{$lang->cmd_search}</button><a cond="$last_division" class="bd_btn" href="{getUrl('page',1,'document_srl','','division',$last_division,'last_division','')}">{$lang->cmd_search_next}</a></td></tr></table></form>cs 1234567891011121314151617181920$("#selectSearch").on("change", function(){console.log($("#selectSearch option:selected").text());var showVal = $("#selectSearch option:selected").text();console.log($("#getUrl"));if(showVal == "기업명"){console.log("회사");$("#mid").val("company");$("#getUrl").action = "/company";}if(showVal == "이름"){console.log("이름");$("#mid").val("people");$("#getUrl").action = "/people";}if(showVal == "숙소명"){console.log("집");$("#mid").val("culppybnb");$("#getUrl").action = "/culppybnb";}});cs 위에 코딩을 설명하자면 select가 처음에 기업명으로 되어있어서 아예 getUrl을 company로 설정해놓았고
mid도 company로 설정해놓았습니다. 저도 잘 모르겠지만 getUrl은 검색할 페이지를 찾는것같고 mid는 db에 저장되어있는 컬럼명인거 같네요 어쨋든 그래서 첨엔 company로하고 jquery를 이용해서 select가 change될 때마다 함수를 실행해서
mid와 getUrl의 바꿔주기위해 $("#getUrl).action을 바꿔주는 식으로 했습니다.
메인페이지에서 검색할 때 해당 게시판으로 이동해서 그 게시판의 내용찾기 였습니다.
혹시 무슨말인가 궁금하시면 쪽지주시면 페이지랑 어떤건지 보여드릴께요 ㅎㅎ
아 태그로 찾는거는 mid를 태그로하면은 geturl을 둘곳이없어서 ㅜㅜ 만약에 할꺼면 인물태그 기업명태그를 따로 놔야해서요 어쨋든 위에 sejin님의 도움을받아서 해결했네요 ㅎㅎ
-
김태근
2017.10.26 16:54
아 그리고 저 검색창 form태그는 게시판에 검색창이 있길래 따온거입니다.
혹시 저 form태그가 submit이 될 때 어느 폴더의 파일과 연관이 되있는지 아시는분은 댓글좀 부탁드립니다 ㅜㅜㅜ
<input type="hidden" name="mid" value="{$mid}" /> 부분을 없애고
<select name="search_target"> 부분을 <select name="mid">
으로 해서 게시판을 지정하고
검색대상을 추가로 hidden 형태로라도 지정해줘야겠죠
<input type="hidden" name="search_target" value="title_content"> 이런 형태로