我正在使用jQuery和jQueryMobile框架构建asp .net网站。成功登录后,我可以看到下一页的内容,但网址保持不变,即/Login.aspx
当我按F5时,只有URL更改。
的Login.aspx
<div data-role="content">
<form id="frmLogin" method="post" runat="server" action="Login.aspx">
<div data-role="fieldcontain">
<input type="text" name="txtUserName" id="txtUserName" placeholder="User Name" value="" runat="server" /><br />
<input type="password" name="txtUserPass" id="txtUserPass" placeholder="Password" value="" runat="server" />
<br />
<button id="cmdLogin" type="button">Login</button>
</div>
</form>
<div id="divDialog"></div>
</div>
点击cmdLogin
登录按钮
$('#cmdLogin').click(function () {
$.ajax({
url: 'ajaxExecute.aspx?Fn=VUSR',
type: 'POST',
context: document.body,
data: 'User=' + $('#txtUserName').val() + '&Pass=' + $('#txtUserPass').val(),
cache: false,
success: function (response) {
alert(f);
if (response == '1') {
f.submit();
}
else {
/*
Print Error
*/
}
}
});
});
登录代码
Login.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
routeToDefaultPage();
}
}
private void routeToDefaultPage()
{
Response.Redirect("Piechart.aspx");
}
这里有什么问题?
当我在登录成功后检查元素时(Piecharts.aspx
的内容,但URL为Login.aspx
)。我在头部看到了以下内容
<base href="http://localhost:49712/Login.aspx">
答案 0 :(得分:0)
单击时,确定将标记ispostback指定为true。这条线上的断点对你有帮助吗?
答案 1 :(得分:0)
试试这个:
Response.Redirect("Piechart.aspx");
Response.End();
答案 2 :(得分:0)
ajax调用后jquery重定向怎么样?
尝试在ajax调用成功后添加此项。 header( 'Location: Piechart.aspx' );
?
$('#cmdLogin').click(function () {
$.ajax({
url: 'ajaxExecute.aspx?Fn=VUSR',
type: 'POST',
context: document.body,
data: 'User=' + $('#txtUserName').val() + '&Pass=' + $('#txtUserPass').val(),
cache: false,
success: function (response) {
// redirects page after login successful
header( 'Location: Piechart.aspx' );
alert(f);
if (response == '1') {
f.submit();
}
else {
/*
Print Error
*/
}
}
});
});
答案 3 :(得分:0)
这对我有用...... !!
$.mobile.changePage( "/Piecharts.aspx", {
transition: "pop"
});