不用Struts2<s:if><s:else>来解决不刷屏幕提交到同一个页面。
原来是用这样的方法做的。
这个方法不好使,请问还有没有什么其他的方法。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" >
<%@ page language="java" pageEncoding="utf-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>用户登录</title>
<link type="text/css" rel="stylesheet" href="style/validatorTidyMode.css" />
<script src="js/formValidator.js" type="text/javascript"></script>
..............
<script type="text/javascript">
$(document).ready(function() {
({
buttons : $("#button").click(function() {
enctype = "multipart/form-data"
if ($.formValidator.pageIsValid('1')) {sub();}
})
})
});
function sub()
{
var username = document.getElementById("username").value;
var password = document.getElementById("password").value;
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
success:function(data){
$("#serverright").html(decodeURI(data));
},
error:function(){$("#serverResponse").html(decodeURI(data));}
});
}
</script>
</head>
<body>
<s:if test="#session.userif != null">
<div id="serverright">
登陆成功:<s:property value="#session.userif" /> || <a
href="cancellation.action">注销</a> </div>
</s:if>
<s:else>
<div id="serverResponse">
<table>
<tr>
<td>
用户名:
<s:textfield id="username" name="user.username" label="用户名 "
theme="simple"/>
</td>
<td>
密码:
<s:password id="password" name="user.password" label="密码"
theme="simple"/>
</td>
<td>
<s:submit name="button" id="button" value="提交" theme="simple"/>
</td>
</tr>
</table>
</div>
</s:else>
</body>
</html>
8 个解决方案
#1
要提问...把话说清楚...OK??
你到底要问什么那?提交失败?ACTION失败??还是你解析有问题??
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
你不是GET提交的吗??
怎么type又是post了??
data:"SUCCESS", 又是什么东西?
你到底要问什么那?提交失败?ACTION失败??还是你解析有问题??
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
你不是GET提交的吗??
怎么type又是post了??
data:"SUCCESS", 又是什么东西?
#2
不是get提交,
是post提交。
而且不用<s:form>
那种方式提交。
data:"SUCCESS"
是成功的话,执行页面上的<div id="serverright"> 这个
还是同一个页面显示登录成功。
是post提交。
而且不用<s:form>
那种方式提交。
data:"SUCCESS"
是成功的话,执行页面上的<div id="serverright"> 这个
还是同一个页面显示登录成功。
#3
想问的就是用别的方法用JQuery+AJAX来实现,
登录和登录成功页面都在同一个JSP页面显示。
而且不用<S:from>方法来解决。
登录和登录成功页面都在同一个JSP页面显示。
而且不用<S:from>方法来解决。
#4
而且不用 <s:form>方法来解决。
#5
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
success:function(data){
$("#serverright").html(decodeURI(data));
},
error:function(){$("#serverResponse").html(decodeURI(data));}
});
}
ajax方法写得有问题。
data:"SUCCESS"可以去掉。另外添加dateType这个参数,用来指定服务器返回的数据类型。
我比较习惯用json,后台这样封装
验证通过:
JSONObject json = new JSONObject();
tradeTraceInfoDao.delete(id);
json.accumulate("success", true);
不通过
json.accumulate("success", false);
Struts2Utils.renderJson(json.toString());
回调方法:
success:function(data){
if(date.success==true){
//显示成功!
}else{
//显示失败!
}
},
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
success:function(data){
$("#serverright").html(decodeURI(data));
},
error:function(){$("#serverResponse").html(decodeURI(data));}
});
}
ajax方法写得有问题。
data:"SUCCESS"可以去掉。另外添加dateType这个参数,用来指定服务器返回的数据类型。
我比较习惯用json,后台这样封装
验证通过:
JSONObject json = new JSONObject();
tradeTraceInfoDao.delete(id);
json.accumulate("success", true);
不通过
json.accumulate("success", false);
Struts2Utils.renderJson(json.toString());
回调方法:
success:function(data){
if(date.success==true){
//显示成功!
}else{
//显示失败!
}
},
#6
dataType:"json"
#7
是你自己拼的URL串啊...
post提交不是这样做的....
var param = [
{ name : 'username', value : username }
,{ name : 'password', value : password }
];
$.ajax({
type: 'post',
url: 'login.action',
data: param,
dataType: 'json',
success: function(data){alert(data);},
error: function(data) {alert(data);}
});
#8
那你们用的就是普通的 json 啊 ?
还是用的是json里的 json rpc 啊?
还是用的是json里的 json rpc 啊?
#1
要提问...把话说清楚...OK??
你到底要问什么那?提交失败?ACTION失败??还是你解析有问题??
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
你不是GET提交的吗??
怎么type又是post了??
data:"SUCCESS", 又是什么东西?
你到底要问什么那?提交失败?ACTION失败??还是你解析有问题??
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
你不是GET提交的吗??
怎么type又是post了??
data:"SUCCESS", 又是什么东西?
#2
不是get提交,
是post提交。
而且不用<s:form>
那种方式提交。
data:"SUCCESS"
是成功的话,执行页面上的<div id="serverright"> 这个
还是同一个页面显示登录成功。
是post提交。
而且不用<s:form>
那种方式提交。
data:"SUCCESS"
是成功的话,执行页面上的<div id="serverright"> 这个
还是同一个页面显示登录成功。
#3
想问的就是用别的方法用JQuery+AJAX来实现,
登录和登录成功页面都在同一个JSP页面显示。
而且不用<S:from>方法来解决。
登录和登录成功页面都在同一个JSP页面显示。
而且不用<S:from>方法来解决。
#4
而且不用 <s:form>方法来解决。
#5
$.ajax({
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
success:function(data){
$("#serverright").html(decodeURI(data));
},
error:function(){$("#serverResponse").html(decodeURI(data));}
});
}
ajax方法写得有问题。
data:"SUCCESS"可以去掉。另外添加dateType这个参数,用来指定服务器返回的数据类型。
我比较习惯用json,后台这样封装
验证通过:
JSONObject json = new JSONObject();
tradeTraceInfoDao.delete(id);
json.accumulate("success", true);
不通过
json.accumulate("success", false);
Struts2Utils.renderJson(json.toString());
回调方法:
success:function(data){
if(date.success==true){
//显示成功!
}else{
//显示失败!
}
},
url:"login.action?username="+username+"&password="+password,
type:'post',
data:"SUCCESS",
success:function(data){
$("#serverright").html(decodeURI(data));
},
error:function(){$("#serverResponse").html(decodeURI(data));}
});
}
ajax方法写得有问题。
data:"SUCCESS"可以去掉。另外添加dateType这个参数,用来指定服务器返回的数据类型。
我比较习惯用json,后台这样封装
验证通过:
JSONObject json = new JSONObject();
tradeTraceInfoDao.delete(id);
json.accumulate("success", true);
不通过
json.accumulate("success", false);
Struts2Utils.renderJson(json.toString());
回调方法:
success:function(data){
if(date.success==true){
//显示成功!
}else{
//显示失败!
}
},
#6
dataType:"json"
#7
是你自己拼的URL串啊...
post提交不是这样做的....
var param = [
{ name : 'username', value : username }
,{ name : 'password', value : password }
];
$.ajax({
type: 'post',
url: 'login.action',
data: param,
dataType: 'json',
success: function(data){alert(data);},
error: function(data) {alert(data);}
});
#8
那你们用的就是普通的 json 啊 ?
还是用的是json里的 json rpc 啊?
还是用的是json里的 json rpc 啊?