使用JQuery的.ajax()提交表单后当前页面表单内容被清空,请问如何保留数据?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用JQuery的.ajax()提交表单后当前页面表单内容被清空,请问如何保留数据?相关的知识,希望对你有一定的参考价值。

使用JQuery的.ajax()提交表单后当前页面表单内容被清空,请问如何保留数据?以下是我的代码:
JS:
$.ajax(
cache : false,
type : "POST",
url : appPath + "/UserServlet?method=signIn",
data : $('#signInForm').serialize(),
dataType : "json",
async : false,
error : function(data)
alert("网络异常!");
,
success : function(data)
if (data.recode == "0000")
location.href = appPath + "/index.html";
else
alert(data.msg);


);

HTML:
<form name="signInForm" id="signInForm" action="" method="post">
<div>用户名/邮箱</div>
<div>
<input type="text" name="username" id="username" />
</div>
<div>密码</div>
<div>
<input type="password" name="password" id="password" />
</div>
<div>
<input type="button" value="登录" onclick="signIn()" />
<input type="button" value="注册" onclick="signUp()" />
</div>
</form>

参考技术A 页面是不是重定向刷新了:location.href。
刷新以后数据肯定是被清空了的。

可以考虑用cookies保存。本回答被提问者采纳
参考技术B

看样子你要的功能是,注册完成跳转到主页,然后输入框内自动带上注册时填入的username。

    ajax是为了不刷新页面,你的ajax接了一个重定向,设计可能有问题。既然要重定向,可以考虑直接post到servlet中,再跳入index.jsp而非index.html,在jsp中取值,逻辑比较好理解。

    不进servlet的话。如果你要传递的是短文本值,可以考虑写cookie。传值无非是get post session cookie之类的,选一个合适的就行。你这种需求可以在url后面直接加参数,类似index.html?username=aaa,再去html中用js来处理,可防止cookie被禁用。

    一家之言,欢迎指正。

参考技术C 一般登陆信息会保存在session里面。

以上是关于使用JQuery的.ajax()提交表单后当前页面表单内容被清空,请问如何保留数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Django、Ajax、jQuery 在不刷新页面的情况下提交表单?

JQuery中使用FormData异步提交数据和提交文件

jQuery ajax post提交本页面处理,为啥提交后URL还携带参数

jQuery中FormData的使用

js 提交的表单后如何在本页面接收返回值

使用 AJAX PHP JQuery 提交表单将我带到操作页面