JavaScript验证在HTML表单上不起作用

用户3441151

我想验证我的jsp表单。

我的test.jsp页面如下

<%@ page import="java.util.Date" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Test</title>
<script>
    function validateForm() {
        var address = document.getElementById("txtAddress");
        alert("Address : " + address);
        if (address == null || address == "") {
            alert("Enter Address");
            return false;
        }

        var city = document.getElementById("txtCity");
        if (city == null || city == "") {
            alert("Enter City");
            return false;
        }
    }
</script>
</head>
<body>
    <form name="TestForm1" action="loginServlet" method="post" onsubmit="return validateForm();">
        <table>
            <tr>
                <td>Address :</td>
                <td><input type="text" name="txtAddress" value="${reqObj.address}" /></td>
                <td>City :</td>
                <td><input type="text" name="txtCity" value="${reqObj.city}" /></td>
            </tr>
            <tr align="left">
                <td colspan="4"><input type="submit" value="Submit" /></td>
            </tr>
        </table>
        <%
            String createdDate = "";
            Date dt = new Date();
            createdDate = dt.toString();
            System.out.println("currentTime>>>>" + createdDate);
        %>
    </form>
</body>
</html>

问题是,运行此项目时,我的test.jsp表单显示为空的“地址”字段,当我单击“提交按钮”时,警报显示“地址:空”

但是,当我在“地址”文本框字段中写一些值时,我再次单击“提交”按钮,它向我显示“地址:空”

我将JAVA与Eclipse Mars 1结合使用。

Prasanna Kumar HA

idjsp中没有属性。

<input type="text" name="txtAddress" value="${reqObj.address}" />

添加idid="txtAddress")attr,然后使用document.getElementById("txtAddress");

<input type="text" id="txtAddress" name="txtAddress" value="${reqObj.address}" />

您可以检查length而不是null""

if(address.value.trim().length == 0)

不仅id可以使用class,name,tag可以使用

  • document.getElementById("xyz");

  • document.getElementsByTagName("p");

  • document.getElementsByClassName("abc");

  • document.getElementsByName("xyz");

更新:主要是您缺少value该元素的获取。取值然后检查

address.value.trim().length

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章