本帖最后由 dswzol 于 2011-02-15 23:24:38 编辑

解决方案 »

  1.   

    你是希望现在的,还是将来那项的也是100。如果现在,你的那个就可以达到要求了。 <script type="text/javascript">
    function check(){
    var a1=document.getElementById("49a1").value;
    var b1=document.getElementById("49b1").value;
    var c1=document.getElementById("49c1").value;
    var d1=document.getElementById("49d1").value;
     
    if(a1>100)
    {
    alert("必须是小于100的数值!");
    document.getElementById("49a1").value=0;
    }
    if(a1+b1>100)
    {
    alert("满分只能为100分!");
    document.getElementById("49b1").value=0;
    }
    if(a1+b1+c1>100){
    alert("满分只能为100分!");
    document.getElementById("49c1").value=0;
    }else{
    document.getElementById("49d1").value=100-a1-b1-c1;
    }
    }
    </script>如果需要后面的将来也要100就把onkeyup="check()"写到每一个后一列去。
      

  2.   

    <script type="text/javascript">
    function check(){
    var a1=document.getElementById("49a1");
    var b1=document.getElementById("49b1");
    var c1=document.getElementById("49c1");
    var d1=document.getElementById("49d1");
    if(a1.value>100)
    {
    alert("必须是小于100的数值!");
    a1.value=0;
    }
    if(parseInt(a1.value)+parseInt(b1.value)>100)
    {
    alert("满分只能为100分!");
    b1.value=0;
    }
    if(parseInt(a1.value)+parseInt(b1.value)+parseInt(c1.value)>100){
    alert("满分只能为100分!");
    c1.value=0;
    }
    if(parseInt(a1.value)+parseInt(b1.value)+parseInt(c1.value)+parseInt(d1.value)>100){
    alert("满分只能为100分!");
    d1.value=100-a1.value-b1.value-c1.value;
    }
    }
    </script>
      

  3.   

    上面那个失去对最后一项自动算值的功能了,不太好。下面这样就可以了
    <script type="text/javascript">
    /* 赵亮theforever_csdn 修改*/
    function check(obj){
    var a1=document.getElementById("49a1");
    var b1=document.getElementById("49b1");
    var c1=document.getElementById("49c1");
    var d1=document.getElementById("49d1");
    if(a1.value>100)
    {
    alert("必须是小于100的数值!");
    a1.value=0;
    }
    if(parseInt(a1.value)+parseInt(b1.value)>100)
    {
    alert("满分只能为100分!");
    b1.value=0;
    }
    if(parseInt(a1.value)+parseInt(b1.value)+parseInt(c1.value)>100){
    alert("满分只能为100分!");
    c1.value=0;
    }else{
    if(obj===d1){
    if(parseInt(a1.value)+parseInt(b1.value)+parseInt(c1.value)+parseInt(d1.value)>100){
    alert("满分只能为100分!");
    d1.value=0;
    }
    }
    else d1.value=100-a1.value-b1.value-c1.value;
    }
    }
    </script>
    <body>
    <form id="form1" name="form1" method="post" action="">
      <table width="700">
      <tr>
      <td width="80%" bgcolor="#EEEEEE"> 49. 显著特征</td>
      <td width="10%" bgcolor="#EEEEEE"> 现在</td>
      <td width="10%" bgcolor="#EEEEEE"> 将来</td>
      </tr>
      <tr>
      <td> A. 公司像一个大家庭,有着人性化和人情味很浓的空间,员工们能够顺畅沟通。</td>
      <td><input id="49a1" size="10" type="text" name="49a1" onkeyup="check(this)" /></td>
      <td><input name="text" type="text" id="Text5" size="10" /></td>
      </tr>
      <tr>
      <td> B. 公司充满创新活力和开拓意识,员工愿意表现自己和承担风险。</td>
      <td><input id="49b1" size="10" type="text" name="49b1" onkeyup="check(this)" /></td>
      <td><input name="text" type="text" id="Text6" size="10" /></td>
      </tr>
      <tr>
      <td> C. 公司注重目标管理和工作结果,员工看重竞争和成就。</td>
      <td><input id="49c1" size="10" type="text" name="49c1" onkeyup="check(this)" /></td>
      <td><input name="text" type="text" id="Text7" size="10" /></td>
      </tr>
      <tr>
      <td> D. 公司组织结构明确,控制系统完善。工作完全按照规章制度。</td>
      <td><input id="49d1" size="10" type="text" name="49d1" onkeyup="check(this)" /></td>
      <td><input name="text" type="text" id="Text8" size="10" /></td>
      </tr>
      <tr>
      <td> 总分</td>
      <td> 100</td>
      <td> 100</td>
      </tr>
      </table>
    </form>