就是有两个js函数aa()和bb(),form中包含一个<select onchange="bb()">,提交form的时候调用aa(),在提交form之前,选择select,调用bb(),然后把select的结果和form中其他的值一起提交,怎样实现呢?
代码如下:
function xuanze(t)
{  代码}
function bb()
{ 代码} 
<form name="frm2" method="post" style="margin:0" enctype="multipart/form-data" onsubmit="return bb();">
<select name="select" id="hstyle" onchange="xuanze(this)">        
   <option value="请选择类型">请选择类型</option> 
  <option value="豪华单人间">豪华单人间</option>
  <option value="豪华双人间">豪华双人间</option>
  <option value="普通单人间">普通单人间</option>
  <option value="普通双人间">普通双人间</option>
  <option value="经济房">经济房</option>
  <option value="豪华多人间">豪华多人间</option>
</select>
床位数<input style="text" name="bednumber" id="hbednumber">  
</form>
求各位高手指教啊!!急急急!

解决方案 »

  1.   

    话说select也是表单的一部分啊,大哥。本来就会一起提交啊。
      

  2.   

    当然可以了,form提交时触发bb()
    select 控件onchange="xuanze(this)"2者不冲突
      

  3.   

    <html>
    <meta http-equiv="Content-Language" content="text/html;charset=utf-8"/>  
    <head><title>客房信息录入</title>
    <style type="text/css">
    <!--
    .STYLE1{font-size:15px;font-family:"幼圆";}
    -->
    </style>
    </head>
    <body bgcolor="#7c9ccf">
    <div align="center">
      <p><font face="幼圆" size="5" color="#0066cc">
        <b>客房信息录入</b></font></p>
    </div>
    <form name="frm1" method="post" action="addhouseinfo.php" style="margin:0">  
    <table width="398" align="center">
    <tr><td width="207"><span class="STYLE1">根据客房号查询客房信息:</span></td>
    <td width="179"><input name="houseID" id="houseID" type="text" size="10">
      <input type="submit" name="test" class="STYLE1" value="查找"></td></tr>
    </table>
    </form>
    <?php
    ini_set("display_errors", "Off");   //忽略警告信息
    session_start();
    $number=@$_POST['houseID'];//获取房间编号
    $_SESSION['number']=$number;//将房间号传给其他页面
    require"connection.php"; 
    if(mysql_select_db('test',$conn))
    {
     
    }
     $sql ="SELECT * FROM house where houseID='$number'";  //查找该房间信息 
    $result=mysql_query($sql);   //把执行后的结果放入变量result中
    $row=mysql_fetch_array($result);
    if(($number!=NULL)&&(!$row))//判断房间号是否已经存在
    echo"<script>alert('没有该房间信息!')</script>";
    ?>
    <script type="text/javascript">
    function bb(){    
        var v1=document.getElementById("hid").value;
       // var v2=document.getElementById("hstyle").value;
        var v3=document.getElementById("hprice").value;
        var v4=document.getElementById("harea").value;
        var v5=document.getElementById("hbednumber").value; 
        var v6=document.getElementById("hlocation").value; 
        var v7=document.getElementById("hair").value;
        var v8=document.getElementById("htv").value; 
        var v9=document.getElementById("hdis").value; 
           if(v1=="")
         {
             
             alert("客房号不能为空!")
            return false;}
       if(v3=="")
         {
            alert("价格不能为空")
            return false;
         }
         if(v3!="")
         {
           if(isNaN(v3))
           {
             alert("价格不是数字,请重新填写!")
             return false;
           }
           else
           {
                if(v3.substr(0,1)==0)
               {
           
                 alert('价格不能以0开头,请重新填写!')
                 return false; 
               }
              
           } 
         }
       if(v4=="")
         {
            alert("面积不能为空")
            return false;
         }
         if(v4!="")
         {
           if(isNaN(v4))
           {
             alert("面积不是数字,请重新填写!")
             return false;
           }
           else
           {
                if(v4.substr(0,1)==0)
               {
           
                 alert('面积不能以0开头,请重新填写!')
                 return false; 
               }
              
           } 
         }
         if(v5=="")
         {
            alert("床位数不能为空")
            return false;
         }
         if(v5!="")
         {
           if(isNaN(v5))
           {
             alert("床位数不是数字,请重新填写!")
             return false;
           }
           else
           {
                if(v5.substr(0,1)==0)
               {
           
                 alert('床位数不能以0开头,请重新填写!')
                 return false; 
               }
              
           } 
         }
         if(v6=="")
         {
            alert("房间位置不能为空")
            return false;
         }
        
       if(v7=="")
         {
            alert("是否有空调不能为空")
            return false;
         }
          if(v7!="")
         {
           var patrn=/(^0{1}$)|(^1{1}$)/;   
           if (!patrn.exec(v7))
           {
           alert('是否有空调只能填"1"或"0",1代表有,0代表无!')
            return false; 
           } 
           
         } 
         if(v8=="")
         {
            alert("是否有电视机不能为空")
            return false;
         }
         /*
          if(v8!="")
         {
           var patrn2=/(^0{1}$)|(^1{1}$)/;   
           if (!patrn2.exec(v8))
           alert('是否有空调只能填"1"或"0",1代表有,0代表无!')
            return false;  
           
         }
          if(v9=="")
         {
           alert("打折不能为空")
            return false;
         }
         if(v9!="")
         {
           //  alert(v9); 
             
           if(isNaN(v9))
           {
             alert("打折不是数字,请重新填写!")
             return false;
           }
           else
           {
                if(v9.substr(0,1)==0)
               {
           
                 alert('打折不能以0开头,请重新填写!')
                 return false; 
               }
               if(v9>10||v9<1)
               {
                 alert('打折只能是1-10之间的数字')
                 return false; 
               }
           } 
         } 
       
    }
    function xuanze(t)
    {  
        var leixing=document.getElementById("hstyle").value;
          if(leixing=="请选择类型")
        {
            alert("选择房间类型");
        }        
        if(leixing=='豪华单人间')
        {
            document.getElementById("hbednumber").value=1;
        }
         if(leixing=="豪华双人间")
        {
              document.getElementById("hbednumber").value=2;
        }
        if(leixing=="普通单人间")
        {
            document.getElementById("hbednumber").value=1;
        }
        if(leixing=="普通双人间")
        {
           document.getElementById("hbednumber").value=2;
        }
        if(leixing=="经济房")
        {
         alert("请输入床位数")
          return false;    
        }
        if(leixing=="豪华多人间")
        {
         alert("请输入床位数")    
        return false; 
        }
    }
    </script>
    <form name="frm2" method="post" style="margin:0" enctype="multipart/form-data" onsubmit="return bb();">
    <table bgcolor="#7c9ccf" width="430" border="1" align="center" cellpadding="0" cellspacing="0">
    <tr><td bgcolor="#7c9ccf" width="90"><span class="STYLE1" >房间号:</span></td>    
    <td><input name="houseid" id="hid" type="text" size="35" class="STYLE1" value="<?php echo $row['houseID'];?>">
    <tr><td class="STYLE1" bgcolor="#7c9ccf" width="90">房间类型:</td>
    <td><select name="housestyle" id="hstyle" style="width:295px" onchange="xuanze(this)">
    <option>请选择类型</option>
     <option value="豪华单人间">豪华单人间</option>
      <option value="豪华双人间">豪华双人间</option>
      <option value="普通单人间">普通单人间</option>
      <option value="普通双人间">普通双人间</option>
      <option value="经济房">经济房</option>
      <option value="豪华多人间">豪华多人间</option>                 
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">房间位置:</span></td>
    <td><input name="houselocation" id="hlocation" size="35" type="text" class="STYLE1"
    value="<?php echo $row['houselocation'];?>"></td></tr> 
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">床位数:</span></td>
    <td><input name="bednumber" id="hbednumber" size="35" type="text" class="STYLE1"
    value="<?php echo $row['bednumber'];?>"></td></tr>
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">单价(元):</span></td>
    <td><input name="price" id="hprice" size="35" type="text" class="STYLE1"
    value="<?php echo $row['price'];?>"></td></tr>
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">面积(平方米):</span></td>
    <td><input name="area" id="harea" size="35" type="text" class="STYLE1"
    value="<?php echo $row['area'];?>"></td></tr>
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">是否有空调:</span></td>
    <td><input name="aircondition" id="hair" size="20" type="text" class="STYLE1"
    value="<?php echo $row['aircondition'];?>"><font size="2" color="#FFFFFF">0表示否,1表示是</font></td></tr>
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">是否有电视机:</span></td>
    <td><input name="TV" id="htv" size="20" type="text" class="STYLE1"
    value="<?php echo $row['TV'];?>"><font size="2" color="#FFFFFF">0表示否,1表示是</font></td></tr>
    <tr><td bgcolor="#7c9ccf"><span  class="STYLE1">打折:(1-9数字)</span></td>
    <td><input name="discount" id="hdis" size="35" type="text" class="STYLE1"
    value="<?php echo $row['discount'];?>"></td></tr>
    <input name="b" type="submit" value="添加" class="STYLE1"/>&nbsp;&nbsp;
    <input name="b" type="submit" value="删除" class="STYLE1">&nbsp;&nbsp;
    </td></tr>
    </table>
    </form>
    </body>
    </html>
    <br><br>
    <?php
    $houseID=@$_POST['houseid'];//房间号
    $housestyle=@$_POST['housestyle'];
    $houselocation=@$_POST['houselocation'];
    $livenumber=0;
    $bednumber=@$_POST['bednumber'];
    $price=@$_POST['price'];
    $area=@$_POST['area'];
    $aircondition=@$_POST['aircondition'];
    $TV=@$_POST['TV'];
    $discount=@$_POST['discount'];
    $res=@$_POST['res'];
    //单击【添加】按钮                                 
    if(@$_POST["b"]=='添加')
    {
      //  test($houseID,$housestyle,$price,$area,$bednumber,$houselocation,$aircondition,$TV,$discount);
        //echo"<script>alert('$livenumber');location.href='addhouseinfo.php';</script>";  
        
       $s_sql="select houseID from house where houseID='$houseID'";
       $s_result=mysql_query($s_sql);
       $s_row=mysql_fetch_array($s_result);
      if($s_row)
          echo"<script>alert('房间号已经存在,无法添加!');location.href='addhouseinfo.php';</script>";
      else
      {
         $insert_sql="insert into house(houseID,housestyle,houselocation,livenumber,bednumber,price,area,aircondition,TV,discount,res) values('$houseID','$housestyle','$houselocation','$livenumber','$bednumber','$price','$area','$aircondition','$TV','$discount','$res')";
         $insert_result=mysql_query($insert_sql);
         if(mysql_affected_rows($conn)!=0)
         echo"<script>alert('添加成功!');location.href='addhouseinfo.php';</script>";
     else
     echo"<script>alert('添加失败,请检查输入信息!');location.href='addhouseinfo.php';</script>";   }
    }
    //单击【删除】按钮
    if(@$_POST["b"]=='删除')
    {
       if($houseID==NULL)
       {
         echo"<script>alert('请输入要删除的房间号!');location.href='addhouseinfo.php';</script>";
       }
       else
       {
         $d_sql="select houseID from house where houseID='$houseID'";//查找该房间信息 ,检查数据库中是否存在该房间号
      $d_result=mysql_query($d_sql);
        
      $d_row=mysql_fetch_array($d_result);
      if(!$d_row)
      echo"<script>alert('房间号不存在,无法删除!');location.href='addhouseinfo.php';</script>" ;
      else
      {
          //mysql_select_db('hotel',$conn);   
        $del_sql="delete from house where houseID='$houseID'";//"DELETE FROM house WHERE CONVERT(`house`.`houseID` USING utf8) ='houseID';"; 
    $del_result=mysql_query($del_sql);              
    if($del_result)
    echo"<script>alert('删除房间号".$houseID."成功!');location.href='addhouseinfo.php';</script>";
            else
                echo"<script>alert('删除房间号".$houseID."失败!');location.href='addhouseinfo.php';</script>";  
      }
       }
    }
    ?>
    这就是代码
      

  4.   

    你的表单没有 submit 按钮,所以函数bb不会被调用说白了:onsubmit 事件只在 submit 按钮被点击时触发
      

  5.   

    <input name="b" type="submit" value="添加" class="STYLE1"/>&nbsp;&nbsp;
    <input name="b" type="submit" value="删除" class="STYLE1">&nbsp;&nbsp;
    这个不是吗?如果不是的话,该怎么做呢?还请教我
      

  6.   

    表单可以提交,但是xuanze(t)代码不能执行,我把它移动到了bb()的上面仍然不能执行!怎么办呢?