0

ここでは、各行に各学生のマークを入力する必要があります

ID -------- MID1 マーク --- MID2 マーク
79 -------- 20 ------------ 40
63 --- ---- 35 -- ---------- 27

ID ---------------> 学生証

MID1 マーク ---> 1st ミッドマーク

MID2 マーク----> 2 番目の中間マーク

40 を超えるマークを検証します。40 未満のマークを入力する必要があるため、1 行のみを検証しています

ここにコードがあります、

<html>


<script type="text/javascript">

function validate()
{
var m1=document.getElementById("m1").value;
if(m1>40)
{
alert("Marks cannot exceed 40");
document.getElementById("m1").value="";
document.getElementById("m1").focus();
return false;
}
else
    {
        return true;
    }
   }

   </script>

 <body>

 <td><input id="m1" type=text size=18 onchange="return validate()"> </td>

 </body>
 </html>

マークを入力するときにすべての行を検証する必要があります.....

4

2 に答える 2

1

検証関数内で document.getElementById("m1") の代わりに "this" を使用するだけです

于 2012-10-27T07:37:19.133 に答える
1

これを試してみてください

function validate(field)
{
    var m1=Number(field.value);
    if(m1>40)
    {
       alert("Marks cannot exceed 40");
       field.value="";
       field.focus();
       return false;
    }
    else
    {
       return true;
    }
}

そしてhtmlで

<input id="m1" type="text" size="18" onchange="return validate(this)"> 

そして、各入力に異なる ID を提供します。複数のコントロールの同じ ID は有効な html ではありません。

于 2012-10-27T07:39:52.983 に答える