객체가 비어 있는지 체크합니다.

4970 단어 대상
프로젝트에서 문제에 부딪히다
  1. 체크박스 그룹이 선택되었는지 확인하기
  2. 선택되면name 값을 되돌려줍니다
  3. 만약 하나도 선택하지 않았다면false로 돌아가기
내가 생각한 솔루션
var checkList_box = function(param,output){

  var $boolean,$result = {};

  if(param){ 

    if(typeof param === 'string'){

      $boolean = $(param).prop('checked') ? true : false;

       $result['name_'+param] = $(param).attr('name')

      } 

    else if(typeof param === 'object'){

        $.each(param,function(i,n){

          if($(n).prop('checked')){

            $boolean = true;

            $result['name_'+n] = $(n).attr('name');

          }

        })

        // 

         //     , IE6 IE7

        //JSON IE8 

        if(JSON.stringify(result) === '{}'){

           $boolean = false;

            return false

        }

        //

        $boolean = checkObj(result)

        if($boolean){       

          return result

        }else{

          return false 

       }

      }    

    }else{

       return false

    }

  return result        

}

여기서 checkObj() 방법은 다음과 같습니다.
var checkObj = function(param){



  if(typeof param !== ‘object’ || param === ‘null’){

       return false

   }



  else{



    var k =0;



    for (var  i in param){



        if(param.hasOwnProperty(n)){

               k++



        }



    }



    return !!k



}



}

 
끝!!
쓰고 나니 갑자기 바보 같아. jquery의 선택기로 똑같은 일을 할 수 있어.
 
var arr = $(':checkbox")

var result = {}

$.each(arr,function(i,n){

  if($(this).prop("checked")){

   result['name'+n] = $(this).attr('name')

 }

  return result

})

그냥 교훈으로 남겨두자!!!

좋은 웹페이지 즐겨찾기