我曾经能够使用以下代码登录到URL。如果登录详细信息错误,它会提醒我,并在正确时将我登录。
网址略有改变,现在,我无法登录。我甚至没有收到提示输入错误的警告消息。没有任何事情发生。
工作正常的旧网址: http://softwarehuttest.x10.mx/public/account/login/?id=notmyid&password=notmypassword
没有任何反应的新网址: http://softwarehuttest.x10.mx/public/account/login/?id=notmyid&password=notmypassword&rank=22
Rank总是一个相同的数字(22只是一个例子);因此,我不希望用户必须输入它。我刚刚添加了一个排名输入来测试这是否是问题,但问题仍然存在。
如果我直接输入带有登录详细信息的URL到浏览器,它就可以了。
考虑到代码在网址更改之前工作正常,我不知道出了什么问题。请指教。谢谢。
<html>
<script>
$(document).on("pageinit", "#loginForm", function () {
$("#form1").on("submit", function (event) {
event.preventDefault();
$.ajax({
type: "GET",
url: "http://softwarehuttest.x10.mx/public/account/login/",
data: $("#form1").serialize(),
success: function (data) {
console.log(data);
if (data.loggedIn) {
$.mobile.changePage("#home");
} else {
alert("You entered the wrong username or password. Please try again.");
}
}
});
});
});
</script>
<div data-role="page" id="loginForm" data-theme="e">
<!--Start of Log In Page-->
<header data-role="header">
<h1>Log In</h1>
</header>
<!--OLD FORM-->
<form id="form1" name="form1" method="GET" action="http://softwarehuttest.x10.mx/public/account/login/">
<label for="id">Username </label>
<input type="text" name="id" id="id" />
<label for="password">Password </label>
<input type="password" name="password" id="password" />
<label for="rank">Rank </label>
<input type="rank" name="rank" id="rank" />
<input type="submit" name="submit" value="Login"/>
</form>
<footer data-role="footer" data-position="fixed">
<h1></h1>
</footer>
</div>
</html>
答案 0 :(得分:0)
我在JSFiddle上测试了你的代码,它显然有效。我收到了回复:&#34; {&#34; loggedIn&#34;:false}&#34;
如果你想简单地隐藏&#34; Rank输入,您可以使用输入类型HIDDEN而不是TEXT,其值设置为22。
<input type="hidden" name="rank" id="rank" value="22">