JavaScript验证页面上动态生成的Radio

<script type="text/javascript">

  
//Form提交前执行验证
     document.forms[0].onsubmit=function(){

  
//获得DIV(ID:div_form_content_show)中所有的<Input>对像
      var inputs=document.getElementById("div_form_content_show").getElementsByTagName("input");

  
//获得DIV(ID:div_form_content_show)中所有的<Textarea>对像
      var textareas=document.getElementById("div_form_content_show").getElementsByTagName("textarea");

   
var radioname;
   
var arrRadio = new Array();
   
      
for(var i=0;i<inputs.length;i++)
      
{

  
//验证text
       if(inputs[i].type=="text")
       
{
         
if(inputs[i].value=="")
         
{
          alert(
"信息没有填写完整!");
          
//inputs[i].style.backgroundColor="red";
          inputs[i].focus();
          
return false;
         }

       }

       
//获得页面上所有的radio
       else if(inputs[i].type=="radio")
       
{
           
//这里将所有的radio根据name分组,便于之后按组判断是否选中(一组选中一个即可)
           if (radioname !=inputs[i].name)
           
{
               arrRadio.push(inputs[i].name);
               radioname 
=inputs[i].name
           }

       }
  
      }

      
//验证textarea
      for(var i=0;i<textareas.length;i++){
       
if(textareas[i].value=="")
       
{
        alert(
"信息没有填写完整!");
        
//textareas[i].style.backgroundColor="red";
        textareas[i].focus();
        
return false;
       }

      }

      
//按name分组验证radio
      for (var i=0;i<arrRadio.length;i++)
      
{
          
var bRadio=false;
          
for (var j=0;j<document.getElementsByName(arrRadio[i]).length;j++)
          
{
              
if (document.getElementsByName(arrRadio[i]).item(j).checked==true)
              
{
                  bRadio
=true;
                  
continue;
              }

          }

          
if (!bRadio)
          
{
              alert(
"一些应该选择的项没有被选择!");
     
return false;
          }

      }

      
return true;
        }

</script>
posted @ 2009-11-30 15:36  tangself  阅读(408)  评论(0编辑  收藏  举报