0
jQuery AJAXリクエストで送信されたログインフォームがあります。私は、 "ボタン" はform.butを提出することができるように使用したいだけ "ボタンは" 機能への応答(データを)持っていないjQuery/AJAXボタンが動作しない理由
HTML:
<form action="" method="post" class="form-signin">
<input type="text" placeholder="Username" id="user" class="form-control loginid">
<input type="text" placeholder="Password" id="password" class="form-control loginpw">
<input type="text" placeholder="Check" id="check" class="form-control ck_secure">
<div class="captcha_block">
<span id="captcha" class="captcha"></span>
<a href="#" class="change" onclick="captchaCode()"> <img src="img/change.svg" alt="" class="photo04"></a>
</div>
<!-- <a href="#" class="login" id="login">Sign In</a> -->
<!-- <input id="login" type="button" class="btn btn-lg btn-primary btn-block" value="Sign In"> -->
<button id="login" class="btn btn-lg btn-primary btn-block" name="login">Sign In</button>
のjavascript:
$("#login").click(function(){
if($('#code').text() != $('#check').val()){
alert('error');
location.reload();
}
else{
$.post('./process.php',
{
type : 'login',
user : $('#user').val(),
Passwd: $('#password').val()
},
function(data){
alert(data);
window.location.href = '../';
});
}
});
process.php:
if($_POST['type'] == 'login'){
$login_row = @mysql_fetch_assoc(@mysql_query("SELECT * FROM `person` WHERE `user` = '".$_POST['user']."' AND `password` = '".$_POST['Passwd']."'"));
if($login_row)
{
$_SESSION['user'] = $login_row['user_name'];
echo 'welcome';
}else
{
echo 'Incorrect username/password. please login again';
}
}
ajaxを使用する必要がない場合は、 – Hacker
@ W.rcのコンソールでエラーが発生していますか? –
'document.ready'の中に' click'イベントハンドラを入れましたか?それでも動作しない場合は、イベントの委任を試みる必要があります。 –