<%@ 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>
<TITLE>Enter Your Data!</TITLE>
</HEAD>
<script type="text/javascript">
function changeVal()
{
document.getElementById("textfield2").value="abc";
}
</script>
<BODY>
<form method="GET" action='index.jsp' name="good">
<input type="submit" name="submit" value="submit" id="textfield2" />
<input type="text" name="done" value='<%=request.getAttribute("k")%>' />
<% String k=request.getParameter("done");
request.setAttribute("k",k);
%>
</form>
</BODY>
</HTML>
这是我的简单index.jsp文件代码,按钮点击后无法显示文字请按下按钮后点击文本令人失望的iN放置值,请帮我解决这个问题
答案 0 :(得分:0)
如果我理解正确,您希望显示提交的值。 尝试改变
<input type="text" name="done" value='<%=request.getAttribute("k")%>' />
到
<input type="text" name="done" value='<%=request.getParameter("done")%>' />
但最好不要在jsp中做任何逻辑。尝试将所有逻辑移动到servlet或任何其他控制器。
答案 1 :(得分:0)
您可能需要在代码中的某个地方调用changeVal()
,可能是在身体的上传位。
<script type="text/javascript">
<%
String paramValue = request.getParameter("submit");
paramValue = (paramValue==null)?"":paramValue;
%>
var buttonValue = <%=paramValue%>;
function changeVal()
{
if(buttonValue!="")
{
document.getElementById("textfield2").value = buttonValue;
}
}
function formSubmit()
{
//set the value need to be changed
document.getElementById("textfield2").value="abc";
document.getElementById("good").submit();
}
</script>
<BODY onload="changeVal()">
<form method="GET" action='index.jsp' id="good" name="good">
<input type="button" onclick="formSubmit()" name="submit" value="submit" id="textfield2" />
<input type="text" name="done" value='<%=request.getAttribute("k")%>' />
<%
String k=request.getParameter("done");
request.setAttribute("k",k);
%>
</form>
</BODY>