테스트 사이트 - 개발 중인 베타 버전입니다

체크시 값넣기 채택완료

망이망소이 6년 전 조회 1,876

라디오버튼 클릭시 값이 검색폼에 input[name=stx]에 하나만 들어가는데

둘다 들어가게 하려면 어떻게해야하나요?

 

라디오버튼

</p>

<p><h3 class="multi_tit">지역</h3>        </p>

<p><input type="checkbox" name="wr_1[]" class="wr_1" value='서울' <?php if(strpos($_GET['stx'], "서울") !== false) echo 'checked'; ?>> 서울 </p>

<p><input type="checkbox" name="wr_1[]" class="wr_1" value='경기' <?php if(strpos($_GET['stx'], "경기") !== false) echo 'checked'; ?>> 경기</p>

<p><input type="checkbox" name="wr_1[]" class="wr_1" value='인천' <?php if(strpos($_GET['stx'], "인천") !== false) echo 'checked'; ?>> 인천</p>

<p> </p>

<p><script></p>

<p>$(document).ready(function(){</p>

<p>    $(".wr_1").change(function(){</p>

<p>            $(".wr_1").prop("checked"); {                </p>

<p>            var chk = $("input[name='wr_1[]']:checked").map(function() {</p>

<p>                return $(this).val();</p>

<p>            }).get().join(" ");</p>

<p>            $('input[name=stx]').attr('value',chk);</p>

<p>        }</p>

<p>    });</p>

<p>});</p>

<p></script></p>

<p><h3 class="multi_tit">요일</h3>        </p>

<p><input type="checkbox" name="wr_41[]" class="wr_41" value='월' <?php if(strpos($_GET['stx'], "월") !== false) echo 'checked'; ?>> 월 </p>

<p>        <input type="checkbox" name="wr_41[]" class="wr_41" value='화' <?php if(strpos($_GET['stx'], "화") !== false) echo 'checked'; ?>> 화</p>

<p>        <input type="checkbox" name="wr_41[]" class="wr_41" value='수' <?php if(strpos($_GET['stx'], "수") !== false) echo 'checked'; ?>> 수</p>

<p>        <input type="checkbox" name="wr_41[]" class="wr_41" value='목' <?php if(strpos($_GET['stx'], "목") !== false) echo 'checked'; ?>> 목</p>

<p>        <input type="checkbox" name="wr_41[]" class="wr_41" value='금' <?php if(strpos($_GET['stx'], "금") !== false) echo 'checked'; ?>> 금</p>

<p>        <input type="checkbox" name="wr_41[]" class="wr_41" value='토' <?php if(strpos($_GET['stx'], "토") !== false) echo 'checked'; ?>> 토</p>

<p>        <input type="checkbox" name="wr_41[]" class="wr_41" value='일' <?php if(strpos($_GET['stx'], "일") !== false) echo 'checked'; ?>> 일</p>

<p><script></p>

<p>$(document).ready(function(){</p>

<p>    $(".wr_41").change(function(){</p>

<p>            $(".wr_41").prop("checked"); {                </p>

<p>            var chk = $("input[name='wr_41[]']:checked").map(function() {</p>

<p>                return $(this).val();</p>

<p>            }).get().join(" ");</p>

<p>            $('input[name=stx]').attr('value',chk);</p>

<p>        }</p>

<p>    });</p>

<p>});</p>

<p></script></p>

<p> </p>

<p>

 

검색폼

</p>

<p><input name="stx"  class="stx" maxlength="15" itemname="검색어" value='<?=stripslashes($stx)?>' style="display:none;"></p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
6년 전

* .attr('value',chk); 보다는 .val(chk) 사용을 더 추천하겠습니다.

* 둘 다 들어가게 하려면 기존값을 유지하면서 추가하는 방법이 있습니다.

 

$('input[name=stx]').attr('value',chk);

->

var val =  $('input[name=stx]').val();

$('input[name=stx]').val(val + ' ' + chk);

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

망이망소이
6년 전
답변 감사합니다. https://sir.kr/qa/322535?page=1&page=1&unanswered=0&s_tag=&cwin=&vsst=&vpage=1#c_322579
ㅎㅎ 다른질문과 일맥상통하는 질문내용이 돼버렸네요 ^^
이렇게 하니까 둘다 체크는 되는데 클릭할때마다 값이 중복으로 계속 들어가버립니다. ^^
한번만 스크립트를 넣어주면 될지 모르겠네요. 시도해보고 있습니다.
망이망소이
6년 전
알려주신 방법으로 여러가지 시도를 해보니
다음과 같은 현상이 있습니다.
1. 하나 선택시 이상없음
예: 서울
2. 두개부터는 이상있음 한번 더 중복됩니다. 서울체크하고 경기 체크하면
예: 서울 서울 경기
3. 서울, 경기 체크하고 다시 경기 체크해제하면 서울만 한번 더 찍힙니다.
예: 서울 서울 경기 서울

이런식으로 찍힙니다. 다시 체크할때 기존 선택된 값들을 유지하는부분을 때문일까요??
마르스컴퍼니
6년 전
얘기해주신 문제가 있어 로직을 새로 짜보면..

wr_1[] 라디오 버튼의 선택된 값 추출
wr_41[] 라디오 버턴의 선택된 값 추출
stx 텍스트박스에 반영

으로 하면 될 것 같습니다.

val1 = $("input[name='wr_1[]']").val();
val2 = $("input[name='wr_41[]']").val();

$('input[name=stx]').val(val1 + ' ' + val2);
망이망소이
6년 전
감사합니다. 죄송합니다만 제가 알려주신 팁을 이해는 언뜻한것 같은데 응용하지 못해서 다시 질문을 올리겠습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인