select 직접입력을 통한 여분필드 검색
본문
wr_1 값을 검색하려고 합니다.
select를 통해 범위로 검색하는 것과 직접입력을 누르면 text박스가 나와서 값을 입력하여 검색하는 2가지로 하려고 합니다.
현재 text박스로는 검색이 되는데 범위를 누르면 검색이 안됩니다 ㅠㅠ
text박스를 없으면 범위 검색은 잘 되고요 ㅠㅠ
<script type="text/javascript">
function goReqreason( obj )
{
if (obj.value == "t" ){
OnOffDisplay.style.display = "inline";
$('#OnOffDisplay_1').focus();
}
else{
$('#OnOffDisplay_1').val(''); //다른 select 선택시 값이 리셋됨.
OnOffDisplay.style.display = "none";
}
}
</script>
<select id="wr_1" name="wr_1" onChange='goReqreason(this)' style="width:130px;cursor: pointer;border: 1px solid #dcdcdc; color: #8a8a8a; border-radius: 5px; text-indent: 5px; height: 28px;">
<option value="">ALL</option>
<option value="0~0.2">0.2x 이하</option>
<option value="0.2~0.5">0.2x~0.5x</option>
<option value="0.5~1">0.5x~1x</option>
<option value="1~5">1x~5x</option>
<option value="5~100000">5x 이상</option>
<option value="t">직접입력</option>
</select>
<span id='OnOffDisplay' style="display:none;">
<input type="text" id="OnOffDisplay_1" name="wr_1" value="" style="float:left;margin-left:11px;margin-top:10px;height:26px;border:1px solid #dcdcdc;border-radius:5px;color:#000;line-height:2em" >
</span>
어떻게 변경하면 좋을지 도와주세요 ㅠㅠ
답변 2
name="wr_1" 이 둘이니 당연히 먼저 전달되는 것은 값이 뒤에 전달되는 것에 의해 덮어씌우기가 되어버리겠죠
다음처럼 이름을 다르게 변경
<select id="wr_1" name="wr_1" --> <select id="wr_1a" name="wr_1a"
<input type="text" id="OnOffDisplay_1" name="wr_1" --> <input type="text" id="OnOffDisplay_1" name="wr_1b"
form 내에 input를 하나추가하고
<input type='hidden' name=wr_1 value='' id='wr1'>
if (obj.value == "t" ){
$('#wr1').val( $('#OnOffDisplay_1').val()); //추가
~
~
else{
$('#wr1').val( $("#wr_1a option:selected").val() ); //추가
제가 보기에는 name값이 중복이라서 안되는거 같아요.
name=" wr_1 " >>> name=" wr_1[] " 이렇게 둘다 변경하고
이러면 아마 검색하는 php단에서 포스트방식이면
$_POST['wr_1'][0] >> select 박스 벨류값
$_POST['wr_1'][1] >> input 박스 벨류값
이렇게 들어갈텐데
if( $_POST['wr_1'][ 0] == "t"){
$wr_1 = $_POST['wr_1'][ 1];
}else{
$wr_1 = $_POST['wr_1'][ 0];
}
이러면 되지않을까 싶습니다.