我试图在ecilipse中运行以下代码,并将错误视为document.form.0 is Null or not an object
。请帮我解决问题。我创建了一个动作类。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<head>Welcome To struts Application.
<title>Struts</title>
<script language="javascript">
function input() {
alert('Insie input function');
if (document.forms[0]) {
alert('true');
document.forms[0].reset();
}
var abs = '<%=request.getContextPath()%>'
alert(abs);
document.form[0].action=abs + "index.do?submit=execute";
document.form[0].submit();
}
</script>
</head>
<body>
<html:form method="post" action="/index">
<html:text property="username"></html:text>
<html:password property="password"></html:password>
<html:button value="Hello" property="button"
onclick="javascript:input();"></html:button>
<html:link page="/index.do">Test the Action</html:link>
</html:form>
</body>
</html>
我已经配置了我的Struts.config文件,如下所示:
<action path="/index"
name="indexform" scope="request" parameter="submit"
validate="false" type="com.work.Action.IndexAction"
>
<forward name="success" path="success.jsp" />
<forward name="failure" path="path.error" />
</action>
答案 0 :(得分:1)
这是document.forms[0]
(注意复数)。这将显示在您的JavaScript控制台中。
此外,从<head>
中删除多余的内容(即“欢迎使用struts应用程序”部分)。
并将空标签表格用于空标签(即<html:text property="username" />
)。