체크박스 선택된값 입력받아 조합 하기....를....그누에 적용 하려면.. 정보
체크박스 선택된값 입력받아 조합 하기....를....그누에 적용 하려면..
첨부파일
본문
<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가지 스크립트를 네이버에서 주어 모아 적용을 해보았는데, 그누에 적용이 헥헥;;
고수님들의 많은 조언 부탁 드립니다.
위소스 첨부 합니다.
#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 파일에서 각 체크 항목들을 중간중간 구분자를 넣어서 문자열로 합쳐서 넣으시면 될거 같구..
이건 직접 스크립트를 짜셔야 할거 같네요. 함수에 매개변수를 하나 더 넣는다던가 해서 각 파트의 구분자를 둔다던가 하는?..
wr_3 에 넣으실 땐 write_update.skin.php 파일에서 각 체크 항목들을 중간중간 구분자를 넣어서 문자열로 합쳐서 넣으시면 될거 같구..
이건 직접 스크립트를 짜셔야 할거 같네요. 함수에 매개변수를 하나 더 넣는다던가 해서 각 파트의 구분자를 둔다던가 하는?..