자바스크립트질문입니다. 폼 - 체크박스 체크.. n개 이상 하도록 하기 정보
자바스크립트질문입니다. 폼 - 체크박스 체크.. n개 이상 하도록 하기본문
<SCRIPT language=JavaScript>
<!--
var maxChecked = 3; //선택가능한 체크박스 갯수
var totalChecked = 0; // 설정 끝
function CountChecked(field) {
if (field.checked)
totalChecked += 1;
else
totalChecked -= 1;
if (totalChecked > maxChecked) {
alert ("최대3개 까지만 가능합니다.");
field.checked = false;
totalChecked -= 1;
}
}
function ResetCount(){
totalChecked = 0;
}
//-->
</SCRIPT>
체크박스를 <script>document.write(maxChecked);</script> 까지만 선택할 수 있습니다.
<FORM action=chnews_ok.php method=post name=Check>
<INPUT name=ck01 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr<BR>
<INPUT name=ck12 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr<BR>
<INPUT name=ck03onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR>
<INPUT name=ck04 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR>
<INPUT name=ck05 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR>
<INPUT name=ck06 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR><BR>
<INPUT type=submit value=Submit>
<INPUT onclick=ResetCount() type=reset value=Reset>
</FORM>
블루비에서 제공 된 소스를 써서 3개까지만 체크를 할 수 있도록 해 두었습니다.
그런데 3개 미만으로 체크하고 submit하는 것도 함께 방지하고 싶은데요..
각 체크박스의 이름이 달라서(db에 입력하기 위해서요)...
어떻게 구현해야 할지 모르겠습니다.
고수님들의 지도 부탁드려요.
<!--
var maxChecked = 3; //선택가능한 체크박스 갯수
var totalChecked = 0; // 설정 끝
function CountChecked(field) {
if (field.checked)
totalChecked += 1;
else
totalChecked -= 1;
if (totalChecked > maxChecked) {
alert ("최대3개 까지만 가능합니다.");
field.checked = false;
totalChecked -= 1;
}
}
function ResetCount(){
totalChecked = 0;
}
//-->
</SCRIPT>
체크박스를 <script>document.write(maxChecked);</script> 까지만 선택할 수 있습니다.
<FORM action=chnews_ok.php method=post name=Check>
<INPUT name=ck01 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr<BR>
<INPUT name=ck12 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr<BR>
<INPUT name=ck03onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR>
<INPUT name=ck04 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR>
<INPUT name=ck05 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR>
<INPUT name=ck06 onclick=CountChecked(this) type=checkbox>http://www.blueb.co.kr <BR><BR>
<INPUT type=submit value=Submit>
<INPUT onclick=ResetCount() type=reset value=Reset>
</FORM>
블루비에서 제공 된 소스를 써서 3개까지만 체크를 할 수 있도록 해 두었습니다.
그런데 3개 미만으로 체크하고 submit하는 것도 함께 방지하고 싶은데요..
각 체크박스의 이름이 달라서(db에 입력하기 위해서요)...
어떻게 구현해야 할지 모르겠습니다.
고수님들의 지도 부탁드려요.
댓글 전체
<input type="checkbox" name="ck[]" onClick="chk_fn()" value=1>
<input type="checkbox" name="ck[]" onClick="chk_fn()" value=1>
<input type="checkbox" name="ck[]" onClick="chk_fn()" value=1>
<script>
function chk_fn() {
chk = document.getElementsByName("ck[]");
var chkon= 0;
for(i=0;i<chk.length; i++) {
var obj = eval(chk[i]);
if(obj.checked) chkon++;
}
}
이렇게 하시면 체크 개수가 나올것 같네요...
<input type="checkbox" name="ck[]" onClick="chk_fn()" value=1>
<input type="checkbox" name="ck[]" onClick="chk_fn()" value=1>
<script>
function chk_fn() {
chk = document.getElementsByName("ck[]");
var chkon= 0;
for(i=0;i<chk.length; i++) {
var obj = eval(chk[i]);
if(obj.checked) chkon++;
}
}
이렇게 하시면 체크 개수가 나올것 같네요...