2
jquery mobileで簡単なWebアプリケーションを作成しようとしています。私は一緒にajaxの結果を表示するフォームで簡単なログを入れている。問題は、私のアヤックスがURLが有効かどうかを知るために警告を出しても結果が得られないことです。 jquery mobileを使って何か特別なことがありますか?Jquery Mobile - ajax結果の問題を取得する
大変感謝しています。
<div data-role="page" id="login" data-theme="a" data-add-back-btn="true">
<div data-role="header">
<h2>Log in</h2>
</div>
<div data-role="content" data-theme="a" data-add-back-btn="true">
<form action="mobilelogin.php" method="post">
Email: <input type="text" name="email" id="useremail">
Password: <input type="password" name="password" id="userpassword">
<input type="submit" value="Enter">
</form>
<div id="loginresult"></div>
</div>
<div data-role="footer"><h4>Chris Sherwood Design 2012</h4></div>
</div>
JSファイル:
$(document).ready(function() {
$('form').submit(function() {
var emailchecker = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/;
var email = $("#useremail").val();
var userpassword = $("#userpassword").val();
var checklength = userpassword.length;
if(email == ""){
alert('Please fill in email field');
return false;
}else if(userpassword == ""){
alert('Please fill in password field');
return false;
}else if((!emailchecker.test(email))){
alert('Please use a valid email');
return false;
}else if(checklength < 6 || checklength > 6){
alert('Password must be six characters');
return false;
}else{
var datastring = $(this).serialize();
alert(datastring);
return false;
$.ajax({
type: "POST",
url: "mobilelogin.php",
data: datastring,
success: function(data){
$("#loginresult").html(data);
}
});
}
});
PHP
<?php
echo 'nothing special here...';
?>
もし私がfalseを返した場合、ページは 'mobilelogin.php'にリダイレクトされ、未定義となります。答えはもう考えてくれてありがとう? – ChrisSherwood
デフォルトのサブミット・アクション(その戻り値をfalseにするか、またはイベント・オブジェクトを使用して)を実行しないでください。私はあなたのために私の答えでそれを明確にします。 – Tjkoopa
回答 - $アヤックス({ タイプ: "POST"、 URL: "mobilelogin.php"、 データ:datastring、 成功:機能(データ){ $( "#のloginresult")HTML(データ) ; } }); falseを返します。 'return false;' ajaxコールの下にある必要がありました!常にこのゲームで学ぶ! – ChrisSherwood