以下A.jsp
- Java code
//省略DAO操作<form id="fom1"><input name="user" value=<%=respUser%> /></form>
以下A.js
- JScript code
function InnerRemarks() { var user= $("#user").val(); $.ajax({ url : "/serv.do", type : "post", dataType : "html", async : false, data : "opAction=InnerRemarks&user="+user, success : function(html) { alert(html); window.history.back(-2); alert(window.location.href);//这里显示是:/serv.do window.location。reload();//无法实现刷新A。jsp }, error : function() { alert("出错啦,请刷新重试!"); } });}
以下 /serv.do---》》
- Java code
public class servextends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("utf-8"); response.setContentType("text/html"); PrintWriter out = response.getWriter(); HttpSession session = request.getSession(); String opAction = request.getParameter("opAction"); if(opAction.equals("loadDBRemarks")){ out.print(sb.toString()); } } }
问:我每次交互后都刷新A.JSP获取新值。。怎么做。??
锚定一下:有没有不要js交互 赋值的那种方式?
------解决方案--------------------
window.location。reload();你弄个。在哪里,刷新个球。是.
------解决方案--------------------
<form id="fom1">
<input type="text" id="user" name="user" value=<%=respUser%> />
</form>
function InnerRemarks() {
var user= $("#user").val();
$.ajax({
url : "/serv.do",
type : "post",
dataType : "html",
async : false,
data : "opAction=InnerRemarks&user="+user,
success : function(html) {
alert(html);
//window.history.back(-2);
//alert(window.location.href);//这里显示是:/serv.do
//window.location。reload();//无法实现刷新A。jsp
document.location.reload();//这样试试
},
error : function() {
alert("出错啦,请刷新重试!");
}
});
}
------解决方案--------------------
reload()是重新载入,数据回来了,但你直接丢弃了,又重新请求了一次服务器,拿回A.jsp的所有内容,意思就是,你请求的数据,你并没有使用,而是在拿到数据的一瞬间按了下F5
------解决方案--------------------
为什么要reload? 直接把返回来的数据 显示到页面上不就行了?
------解决方案--------------------
document.location.reload();
这个就是我们一般在游览器中常用的F5按钮。
你调用完后会有个返回函数,在这个返回函数中刷新数据列表。就是说,在你的服务器把数据准备好,返还个客户端,然后再客户端重新重新生成数据。
技术,在生成数据以前,要把以前的数据给清空了,不然数据会重复。
------解决方案--------------------
没明白既然要刷新干嘛ajax
------解决方案--------------------
感觉楼主没有明白ajax是什么,如果你要reload(),不如直接在serv.do里写cookie或者session,然后再在A.jsp里面取出来直接填到input里。
第二种就直接用ajax的方式