2009/02/03

[javascript]checkboxの必須チェック(n個分)

やはりradioボタンの時と同様に同じやり方でいけるみたいです。

全然、ソースに変更はありません。

しいて言えば、ファンクション名が変わったぐらいかなと。

<input type="checkbox" name="hoge" value="1">test_01
<input type="checkbox" name="hoge" value="2">test_02
<input type="checkbox" name="hoge" value="3">test_03
<input type="button" value="run"
onclick="lf_check_checkbox('hoge');"
>
<script type="text/javascript">
function lf_check_checkbox(aObjName){
var ret = (function(){
var temp_obj = document.getElementsByName(aObjName);
var input_length = temp_obj.length;
/* checkboxボタンの数だけループ */
for(var i=0; i<input_length; i++){
/* 一回でもついている場合は、その場でtrueを返す */
if(temp_obj[i].checked){ return true; }
}
/* チェックがついていない場合 */
return false;}()
);

/* チェックがついていない場合 */
if(!ret){
alert("チェックが入っていません");
/* 以下、チェックがついていない場合の処理を追加 */
/* ・・・・ */
return false;
/* チェックがついている場合 */
}else{
alert("チェックが入っています。");
/* 以下、チェックがついている場合の処理を追加 */
/* ・・・・ */
return true;
}
}
</script>

上のソースは、複数個ですが、1個の場合でも動きます。

0 コメント:

コメントを投稿