-3
<!DOCTYPE html>
<html>
<head>
<script>
function validateAlphaNumeric()
{
alert("function start");
var alphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var numbers="0123456789";
var flag=true;
var prod_id=document.getElementByID("productid").value;
alert(prod_id);
for(var i=0;i<prod_id.length;i++)
{
if(alphabets.indexOf(prod_id.charAt(i))==-1 || numbers.indexOf(prod_id.charAt(i)==-1)
{
alert("value must be alphanumeric");
break;
}
}


var prod_type=document.myform.producttype.value;
for(var i=0;i<prod_type.length;i++)
{
if(alphabets.indexOf(prod_type.charAt(i))==-1 || numbers.indexOf(prod_type.charAt(i)==-1)
{
alert("value must be alphanumeric");
break;
}
}
}
</script>
</head>
<body>

<form name="myform" action="http://localhost:8080/examples/Submit.HTML" method="POST">

<br><br>
Prodcut ID:<input type="text" name="productid" id="productid" size="25" ">
<br><br>
Product Type:<input type="text" name="producttype" id="producttype" size="25" ">
<br><br>
</div>

<input type="submit"  onclick="validateAlphaNumeric()" value="Submit">
</form>
</body>
</html> 

これは、基本を学ぶためだけに書かれたテスト ページです。[送信] を押しても、チェックが行われず、Submit.html ページに移動します。なぜですか? ここでどのような変更が必要ですか?

<input type="submit"  onclick="validateAlphaNumeric()" value="Submit">

このボタンを押すと、正確には何が起こりますか?

var prod_id=document.getElementByID("productid").value;

  var prod_type=document.myform.producttype.value;

両方のメカニズムは同じですか?

This is the Modified one.But still not working. Please help

<!DOCTYPE html>
<html>
<head>
<script>
function validateAlphaNumeric()
{

var alphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var numbers="0123456789";
var flag=true;
var prod_id=document.getElementByID("productid").value;

for(var i=0;i<prod_id.length;i++)
{
if(alphabets.indexOf(prod_id.charAt(i))==-1 && numbers.indexOf(prod_id.charAt(i)==-1))
{
alert("value must be alphanumeric");
return false;
}
}


var prod_type=document.myform.producttype.value;
for(var i=0;i<prod_type.length;i++)
{
if(alphabets.indexOf(prod_type.charAt(i))==-1 && numbers.indexOf(prod_type.charAt(i)==-1))
{
alert("value must be alphanumeric");
return false;
}
}
}
</script>
</head>
<body>

<form name="myform" action="http://localhost:8080/examples/Submit.HTML" method="POST">

<br><br>
Prodcut ID:<input type="text" name="productid" id="productid" size="25" ">
<br><br>
Product Type:<input type="text" name="producttype" id="producttype" size="25" ">
<br><br>
</div>

<input type="submit"  onclick="validateAlphaNumeric(); " value="Submit">
</form>
</body>
</html> 
4

3 に答える 3

1

if ステートメントの閉じ括弧を忘れてしまいました。

<!DOCTYPE html>
<html>
<head>
<script>
function validateAlphaNumeric()
{
alert("function start");
var alphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var numbers="0123456789";
var flag=true;
var prod_id=document.getElementByID("productid").value;
alert(prod_id);
for(var i=0;i<prod_id.length;i++)
{
if(alphabets.indexOf(prod_id.charAt(i))==-1 && numbers.indexOf(prod_id.charAt(i)==-1))
{
alert("value must be alphanumeric");
break;
}
}


var prod_type=document.myform.producttype.value;
for(var i=0;i<prod_type.length;i++)
{
if(alphabets.indexOf(prod_type.charAt(i))==-1 && numbers.indexOf(prod_type.charAt(i)==-1))
{
alert("value must be alphanumeric");
break;
}
}
}
</script>
</head>
<body>

<form name="myform" action="" method="POST">

<br><br>
Prodcut ID:<input type="text" name="productid" id="productid" size="25" ">
<br><br>
Product Type:<input type="text" name="producttype" id="producttype" size="25" ">
<br><br>
</div>

<input type="submit"  onclick="validateAlphaNumeric()" value="Submit">
</form>
</body>
</html> 
于 2013-02-05T21:32:08.923 に答える
0

アクションページに移動したくない場合は、return false;を入力する必要があります。このようなonclickの最後に

onclick="validateAlphaNumeric();return false;"

またはreturn false を入れます。return falseで呼び出す関数の最後に。あなたはブラウザが送信しないと言います

于 2013-02-05T21:28:59.343 に答える
0

検証が失敗したときに false を返すようにしてください

于 2013-02-05T21:29:10.717 に答える