使用javascript在jsp中显示错误消息

时间:2014-04-22 08:54:28

标签: java javascript jquery jsp

我有一个包含表单的jsp文件,我需要验证表单。 jsp页面将作为弹出页面打开,因此我选择不再弹出验证消息。这是我的代码。

<script type="text/javascript"> 
    function validateForm() {
        var x=document.forms["myForm"]["name1"].value;
        if (x.trim().length<=4){
            return false;
        }
    }
</script>
<form name="myForm" method="POST" action="write.jsp" onsubmit="return validateForm();">
    Name: <input type="text" name="name1" value="<%=name%>" size="20"/>  <br> 
    Price: <input type="text" name="price"  value="<%=price%>" size="20" /><br> 
    Due time: <input type="text" name="DueTime"  value="<%=dueday%>" size="20" /><br> 
    Location: <input type="text" name="Location"  value="<%=address%>" size="20" /><br> 
    Photo Url: <input type="text" name="url"  value="<%=imagePath%>" size="20" /><br> 
    Description: <input type="text" name="desc"  value="<%=desc%>" size="20" /><br> 
    <input type="submit" name="submit" onclick="window.close()"/>
    <% if(validateForm = false) { %> <a>error message</a> <% } %>
</form>

我仅验证第一个输入"name1",输入长度小于4 我想在提交按钮下面显示一条错误消息。代码不起作用,任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

使用document.getElementsByName("name1")代替document.forms["myForm"]["name1"].value;

用作

function validateForm()
{
var x=document.getElementsByName("name1").value;
if (x.trim().length<=4)
  {
    alert("Message");
    return false;
  }
}

答案 1 :(得分:0)

 document.getElementsByName('name1')[0].value;  

取代

document.forms["myForm"]["name1"].value;

使用提交按钮下方的跨度
HTML

<span id="error"></span>

脚本

function validateForm()
                {
                var x=document.getElementsByName('name1')[0].value;
                if (x.trim().length<=4)
                  {
                    document.getElementById("error").innerHTML="atleast 4 letters required in name";
                    return false;
                  }
                }