我正在为我的Phonegap应用程序制作登录表单,但无法将用户输入发送到我的服务器进行验证。
现在,我只是想确保首先引用用户输入,所以我试图将其alert
出来。
当我这样做时,什么也没发生。
但是,如果我注释掉哈希,一切正常。
下面是哈希脚本的链接。它之前在其他示例中也有效。
也许我对jQuery生疏了,错过了一些愚蠢的东西,我不知道。
简讯
$(document).ready(function()
{
$("#login").submit(function()
{
-- This block is what is commented or not to make the alert work --
var NoHashPwd = $("#password").val();
var HashedPwd = hex_sha512(NoHashPwd.value);
$("#p").val(HashedPwd);
password.value = "";
-- End block --
var uname = $("#uname").val();
var p = $("#p").val();
alert(uname);
});
});
登录表单
<form id="login">
<input type="hidden" name="login_lat" id="login_lat" value="fill" />
<input type="hidden" name="login_lon" id="login_lon" value="fill" />
<input type="hidden" name="p" id="p" value="coming" />
<label for="uname">Username: </label>
<input type="text" name="uname" id="uname" />
<br />
<label for="password">Password: </label>
<input type="password" name="password" id="password" />
<br />
<input type="submit" value="Login" name="login" />
</form>
所以我
在@apanosa的帮助下修复了它
他说的没错,什么都没有被触发,NoHashPwd.value
是不正确的。
不正确,我的意思是它NULL
,没有附加价值。
我更改了我的代码,只NoHashPwd
一个变量,并在hash_sha512
函数中引用了它。
感谢您的帮助@apanosa
新 JS
var NoHashPwd = $("#password").val();
var HashedPwd = hex_sha512(NoHashPwd);
$("#p").val(HashedPwd);
$("#password").val(" ");
var uname = $("#uname").val();
var login_lat = $("#login_lat").val();
var login_lon = $("#login_lon").val();
var p = $("#p").val();