为什么javascript的输出只显示了很短的一段时间?

为什么javascript的输出只显示了很短的一段时间?,javascript,html,eclipse,jsp,Javascript,Html,Eclipse,Jsp,我正在为我的任务准备一份登记表。所有的东西都在工作,但当我点击提交按钮时,标签上的警告信息只显示了很短的一段时间。我正在使用eclipse和ApacheTomcat。这是我的密码。 JSP代码: <form method="post"> <h2>Welcome to AP Auctions. Please Enter Bid</h2> <span id="msg" style="color:red;fon

我正在为我的任务准备一份登记表。所有的东西都在工作,但当我点击提交按钮时,标签上的警告信息只显示了很短的一段时间。我正在使用eclipse和ApacheTomcat。这是我的密码。 JSP代码:

<form method="post">
<h2>Welcome to AP Auctions. Please Enter Bid</h2>
<span id="msg" style="color:red;font-size:25px"></span><br/>
<label id="itemid_l">Item Id:</label> <input type="text" name="itemid" id="itemid"/><br/>
<label id="itemname_l">Item Name:</label> <input type="text" name="itemname" id="itemname"/><br/>
<label id="uname_l">Your Name:</label> <input type="text" name="uname" id="uname"/><br/>
<label id="email_l">Your Email Address:</label> <input type="text" name="email" id="email"/><br/>
<label id="amount_l">Amount Bid:</label> <input type="number" name="amount" id="amount"/><br/>
<label id="autoincrement_l">Auto-increment to match other bidders:</label><input type="checkbox" name="autoincrement" id="autoincrement"><br/>
<input type="submit" value="Submit Bid" onclick="validate()"/>
</form>

欢迎来到美联社拍卖。请输入出价

项目Id:
项目名称:
您的姓名:
您的电子邮件地址:
投标金额:
自动递增以匹配其他投标人:
Javascript代码:

function validate()
{
    var itemid=document.getElementById("itemid").value;
    var itemname=document.getElementById("itemname").value;
    var uname=document.getElementById("uname").value;
    var email=document.getElementById("email").value;
    var amount=document.getElementById("amount").value;
    var autoincrement=document.getElementById("autoincrement");
    var flag=true;
    if(itemid.length==0){
    flag=false;
    document.getElementById("itemid_l").innerHTML="<b>Required field!</b> Item Id: ";
    }
    if(itemname.length==0){
    flag=false;
    document.getElementById("itemname_l").innerHTML="<b>Required field!</b> Item Name: ";
    }
    if(uname.length==0){
    flag=false;
    document.getElementById("uname_l").innerHTML="<b>Required field!</b> Your Name: ";
    }
    if(email.length==0){
    flag=false;
    document.getElementById("email_l").innerHTML="<b>Required field!</b> Your Email Address: ";
    }
    if(amount.length==0){
    flag=false;
    document.getElementById("amount_l").innerHTML="<b>Required field!</b> Amount Bid: ";
    }
    if(!autoincrement.checked){
    flag=false;
    document.getElementById("autoincrement_l").innerHTML="<b>Required field!</b> Auto-increment to match other bidders:: ";
    }
    if(flag==true){     
        alert('Good job!!');
        return true;
    }
    else
    {
        document.getElementById("msg").innerHTML="Required data is missing. Please fill";
        return false;
    }
}
函数验证()
{
var itemid=document.getElementById(“itemid”).value;
var itemname=document.getElementById(“itemname”).value;
var uname=document.getElementById(“uname”).value;
var email=document.getElementById(“email”).value;
var金额=document.getElementById(“金额”).value;
var autoincrement=document.getElementById(“autoincrement”);
var标志=真;
if(itemid.length==0){
flag=false;
document.getElementById(“itemid_l”).innerHTML=“必填字段!项目Id:”;
}
if(itemname.length==0){
flag=false;
document.getElementById(“itemname_l”).innerHTML=“必填字段!项目名称:”;
}
如果(uname.length==0){
flag=false;
document.getElementById(“uname_l”).innerHTML=“必填字段!您的姓名:”;
}
如果(email.length==0){
flag=false;
document.getElementById(“email_l”).innerHTML=“必填字段!您的电子邮件地址:”;
}
如果(amount.length==0){
flag=false;
document.getElementById(“金额”).innerHTML=“必填字段!金额投标:”;
}
如果(!autoincrement.checked){
flag=false;
document.getElementById(“autoincrement_l”).innerHTML=“必填字段!自动递增以匹配其他投标人:”;
}
如果(flag==true){
警惕(“干得好!!”);
返回true;
}
其他的
{
document.getElementById(“msg”).innerHTML=“缺少必需的数据。请填写”;
返回false;
}
}

任何建议都会对我有很大帮助。

您可以使用
onsubmit
事件,这样每当用户单击submit按钮时,就会得到调用,如果函数
validate()
返回true表单将被提交,否则它将不会提交表单

演示代码

函数验证(){
var itemid=document.getElementById(“itemid”).value;
var itemname=document.getElementById(“itemname”).value;
var uname=document.getElementById(“uname”).value;
var email=document.getElementById(“email”).value;
var金额=document.getElementById(“金额”).value;
var autoincrement=document.getElementById(“autoincrement”);
var标志=真;
if(itemid.length==0){
flag=false;
document.getElementById(“itemid_l”).innerHTML=“必填字段!”;
}否则{
//如果填充,请删除任何错误
document.getElementById(“itemid_l”).innerHTML=“”
}
if(itemname.length==0){
flag=false;
document.getElementById(“itemname_l”).innerHTML=“必填字段!”;
}否则{
//如果填充,请删除任何错误
document.getElementById(“itemname_l”).innerHTML=“”;
}
如果(uname.length==0){
flag=false;
document.getElementById(“uname_l”).innerHTML=“必填字段!”;
}否则{
document.getElementById(“uname_l”).innerHTML=“”;
}
如果(email.length==0){
flag=false;
document.getElementById(“email_l”).innerHTML=“必填字段!”;
}否则{
document.getElementById(“email_l”).innerHTML=“”;
}
如果(amount.length==0){
flag=false;
document.getElementById(“amount_l”).innerHTML=“必填字段!”;
}否则{
document.getElementById(“金额”).innerHTML=“”;
}
如果(!autoincrement.checked){
flag=false;
document.getElementById(“autoincrement_l”).innerHTML=“必填字段!”;
}否则{
document.getElementById(“autoincrement_l”).innerHTML=“”;
}
如果(标志==真){
document.getElementById(“msg”).innerHTML=“”;
警惕(“干得好!!”);
flag=true;//执行true
}否则{
document.getElementById(“msg”).innerHTML=“缺少必需的数据。请填写”;
flag=false;//执行false
}
返回标志;//返回标志
}

欢迎来到美联社拍卖。请输入出价

项目Id:
项目名称:
您的姓名:
您的电子邮件地址:
投标金额:
自动递增以匹配其他投标人:

当您提交表单时,会导致加载一个页面-在这种情况下,该页面与您没有操作属性的页面相同。如何解决该问题?。我对jspThanks很陌生!从昨晚开始,我一直被困在这一点上。是的,我需要显示错误,这也是我无法使用必需属性的原因。再次感谢!!