其中Gender,sexuality,usefor,age,Mycountry,rules都是用select选择值的,Gender,rules是type=radio选择的<script  language="javascript"> 
function thisForm(){
var username = document.showLogin.username.value;
var email = document.showLogin.email.value.indexOf("@");
var Gender = document.shwoLogin.Gender.value;
var sexuality = document.shwoLogin.sexuality.value;
var usefor = document.showLogin.usefor.value;
var age = document.shwoLogin.age.value;
var Mycountry = document.showLogin.Mycountry.value;
var rules = document.showLogin.rules.value;
if(username.length < 1 ||username.length > 30){
alert("please make a username at first!");
return false;
}
if (email==-1){
  alert("email is necessary")
  return false;
}
if (Gender==""){
  alert("Gender choice is necessary");
  return false;
}
if (sexuality==""){
  alert("My sexuality is need in here");
  return false;
}
if (usefor==""){
  alert("I'am use this site for...is necessary");
  return false;
}
if (age==""){
  alert("age is necessary");
  return false;
}
if (Mycountry==""){
  alert("Mycountry is necessary too");
  return false;
}
if (rules==""){
alert("Please select yes or not for rules");
return false;
}
thisForm.submit();
}</SCRIPT>

解决方案 »

  1.   

    你应该把html也贴出来。<script language="javascript">  
    function thisForm(){
    //获取表单元素使用document。getElementById("username").value
    //“username”为id值
    var username = document.showLogin.username.value;
    var email = document.showLogin.email.value.indexOf("@");
    var Gender = document.shwoLogin.Gender.value;
    var sexuality = document.shwoLogin.sexuality.value;
    var usefor = document.showLogin.usefor.value;
    var age = document.shwoLogin.age.value;
    var Mycountry = document.showLogin.Mycountry.value;
    var rules = document.showLogin.rules.value;
    if(username.length < 1 ||username.length > 30){
    alert("please make a username at first!");
    return false;
    }
    if (email==-1){
      alert("email is necessary")
      return false;
    }
    if (Gender==""){
      alert("Gender choice is necessary");
      return false;
    }
    if (sexuality==""){
      alert("My sexuality is need in here");
      return false;
    }
    if (usefor==""){
      alert("I'am use this site for...is necessary");
      return false;
    }
    if (age==""){
      alert("age is necessary");
      return false;
    }
    if (Mycountry==""){
      alert("Mycountry is necessary too");
      return false;
    }
    if (rules==""){
    alert("Please select yes or not for rules");
    return false;
    }
    //下面修改为return true;
    thisForm.submit();
    }</SCRIPT>html最好这样写 <form name = "form1" action = "...">
      .......
     <input type = "submit" value = "提交" onclick = "return thisForm();"/>
     </form>
      

  2.   

    建议 thisForm()方法最后的 thisForm.submit();改为 return  true;
    就可以了
      

  3.   

    <SCRIPT LANGUAGE="JavaScript">
    //radio取値
    function getTD(){
        var obj=document.form1.rdo1;
        var radio;
        for( var i=0;i<obj.length;i++)
        if(obj[i].checked)radio=obj[i].value;
        alert(radio);
    }
    </SCRIPT>
    <form name=form1>
    <input type=button value=getTD onclick="getTD();">
    <input type=radio value=1 name=rdo1 checked>11
    <input type=radio value=2 name=rdo1>22
    </form>
      

  4.   

    撇开HTML的话,这段代码没有任何问题。
    只能猜测楼主可能错的地方。
     1.thisForm.submit();改为 return true;2.提交按钮必须写成 <input type = "submit" value = "提交" onclick = "return thisForm();"/>
    如果是 onclick = "thisForm();"/>将不起任何作用。
      

  5.   

    或者我猜也可能是lz的代码在ie下是好的,firefox却不行
    document.showLogin.username这样的要改为标准的document.getElementById()
      

  6.   

    建议你看一下楼上的标准DOM操作,可以更好的兼容各种浏览器
    document.getElementById()这种写法.
      

  7.   

    楼主写的兼容性不高,最好是用DOM操作,因为很多浏览器是不支持楼主那样写的。
    另外测试的时候可以采取删减法,删一部分试试,最后确定是哪里出错了。
      

  8.   

    你知道document.getElementById()
    就不知道还有document.getElementsByName()
      

  9.   

    谢谢大家的帮助,按9楼说的删减方法发现Gender 那里错了,HTML 是这样的:<p>I am<input name="Gender" id="Gender" type="radio" value="male" >Male<input name="Gender" type="radio" value="female" >Female</p>按5楼的写法改好像不行,该咋改呢?另外:sexuality的HTML 如下:又该咋改上面的javascript验证呢?<p><select size="1" style="width: 230; height: 19" name="sexuality" id="sexuality">
                                        <option selected>My sexuality is...</option>
                                        <option value="Heterosexual">Heterosexual</option>
                                        <option value="Homosexual">Homosexual</option>
                                        <option value="Bisexual">Bisexual</option>
                                      </select></p>