체크박스 선택된값 입력받아 조합 하기....를....그누에 적용 하려면.. > 그누4 질문답변

그누4 질문답변

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

체크박스 선택된값 입력받아 조합 하기....를....그누에 적용 하려면.. 정보

체크박스 선택된값 입력받아 조합 하기....를....그누에 적용 하려면..

첨부파일

test_kun.php (7.9K) 0회 다운로드 2012-10-09 21:56:04

본문

<style type="text/css">
  #layerPop{width:600px;height:200px;position:absolute;display:none;border:1px solid #ccc;padding:10px;}
  #layerPop .close{position:absolute;bottom:5px;right:5px;}
 </style>
  <script type="text/javascript">
 <!--
 //레이어 팝업 열기
 function openLayer(IdName, tpos, lpos){
  var pop = document.getElementById(IdName);
  pop.style.display = "block";
  pop.style.top = tpos + "px";
  pop.style.left = lpos + "px";
 }

 //레이어 팝업 닫기
 function closeLayer(IdName){
  var pop = document.getElementById(IdName);
  pop.style.display = "none";
 }

//----
    function chkInOut(obj){
      var result = document.fwrite.result;
      var values = result.value;
      if(obj.checked){
        if(!RegExp(obj.value).test(values)){
          result.value+=(values)?","+obj.value:obj.value;
        }
      }else{
        result.value = result.value.replace(
        !result.value.search(obj.value)?obj.value:","+obj.value
        ,"");
      }
    }

//----
 max = 6;

 function checkNum(obj){

<?for($i=1; $i<=48; $i=$i+1){?>

ch<?=$i?> = document.fwrite.check<?=$i?>.checked;

<?}?>

  selected = <?for($i=1; $i<=47; $i=$i+1){?>(ch<?=$i?> ? 1 : 0) + <?}?> (ch48 ? 1 : 0);
  if(selected >max){
  alert("관심 항목은 6개까지만 선택할 수 있습니다.");
  obj.checked = false;
  }
 }


  //-->
 </script>

<FORM METHOD="POST" NAME="fwrite">

    <INPUT TYPE="text" NAME="result" size = 80%><a href="#" onclick="openLayer('layerPop',100,200)">Open</a>


 <div id="layerPop">
 <strong>내용</strong>
 <ol>
  <li>
<br />
<INPUT TYPE="checkbox" name="check1" onclick="chkInOut(this); checkNum(check1)" value="피팅모델"><b>피팅모델</b>:
<INPUT TYPE="checkbox" name="check2" onclick="chkInOut(this); checkNum(check2)" value="웨딩/한복모델">웨딩/한복모델
<INPUT TYPE="checkbox" name="check3" onclick="chkInOut(this); checkNum(check3)" value="수영복모델">수영복모델

~중략~

<INPUT TYPE="checkbox" name="check45" onclick="chkInOut(this); checkNum(check45)" value="고양이">고양이
<INPUT TYPE="checkbox" name="check46" onclick="chkInOut(this); checkNum(check46)" value="원숭이">원숭이
<INPUT TYPE="checkbox" name="check47" onclick="chkInOut(this); checkNum(check47)" value="파충류">파충류
<INPUT TYPE="checkbox" name="check48" onclick="chkInOut(this); checkNum(check48)" value="조류">조류


<br />



  </li>
  <!-- <li>레이어 팝업 열기: openLayer('레이어 팝업ID',top위치,left위치)</li>
  <li>레이어 팝업 닫기 closeLayer('레이어 팝업ID')</li>
  <li>첨부터 레이어 팝업을 보여줄라면 #layerPop에서 display:none; 제거</li> -->
 </ol>
 <a href="#" onclick="closeLayer('layerPop')" class="close">close</a>
 </div>


</FORM>

==========================================
위소스까진 이곳 저곳 뒤져서 만들긴 했는데요

1. 보드 필드 "bo_1" 데이터를 넣고 DB로 끌고 와서 뿌려 주기.<- 위에는 노가다 ;;

2. 게시판 필드 "wr_3" 이라는 곳에 넣고 싶은데 허허...어렵네요..

3. 1차 2차 채크 제안을 따로 따로 개수 지정 해서 하고 싶은데요

나름데로 4가지 스크립트를 네이버에서 주어 모아 적용을 해보았는데, 그누에 적용이  헥헥;;

고수님들의 많은 조언 부탁 드립니다.

위소스 첨부 합니다.

댓글 전체

이건.. bo_1 데이터 넣을 때 구분자를 넣어서, 실제로 뿌려 줄때 explode 를 사용 하여 구분자를 기준으로 나눠서 배열로 만들어 for 문을 돌려서 뿌려 주시고,

wr_3 에 넣으실 땐 write_update.skin.php 파일에서 각 체크 항목들을 중간중간 구분자를 넣어서 문자열로 합쳐서 넣으시면 될거 같구..

이건 직접 스크립트를 짜셔야 할거 같네요. 함수에 매개변수를 하나 더 넣는다던가 해서 각 파트의 구분자를 둔다던가 하는?..
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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