我總是使用純HTML版本進行登錄,但希望從現在開始使用jQuery版本。相互之間是否有優點或缺點?請安全觀點。使用html或jquery登錄表單的方法
注:我將驗證變量後端,所以現在不用擔心。
感謝
純HTML
<form name="login" method="post" action="login.php">
Username: <input type="text" id="username" name="username" /><br />
Password: <input type="password" id="password" name="password" /><br />
<input type="submit" id="submit" name="submit" value="Login" />
<input type="hidden" id="hash" name="hash" value="dynamic has goes here" />
<input type="hidden" id="trap" name="trap" value="allways empty" />
</form>
JQuery的風格
$(document).ready(function()
{
$("#login").submit(function(event)
{
event.preventDefault();
var username = $('#username').val();
var password = $('#password').val();
var hash = $('#hash').val();
var trap = $('#trap').val();
$.ajax({
type : 'POST',
url : 'login.php',
data : {username:username, password:password, hash:hash, trap:trap},
dataType : 'json',
cache : false,
success : function(response)
{
window.location = response.redirect;
},
error : function(response)
{
//Process
}
});
return false;
});
});
<form name="login" method="post">
Username: <input type="text" id="username" name="username" /><br />
Password: <input type="password" id="password" name="password" /><br />
<button type="submit">Login</button>
<input type="hidden" id="hash" name="hash" value="dynamic has goes here" />
<input type="hidden" id="trap" name="trap" value="allways empty" />
</form>
只要您使用HTTPS,我不會看到問題。順便說一句,使用jQuery方法你並不需要使用表單元素,它可以是任何東西,比如div。 –
您可以使用JavaScript/jQuery執行驗證。 – pmandell