Javascript Phonegap登录表单中的jQuery

Javascript Phonegap登录表单中的jQuery,javascript,jquery,cordova,Javascript,Jquery,Cordova,我正在为我的Phonegap应用程序制作登录表单,无法将用户输入发送到我的服务器进行验证 现在,我只是想确保用户输入首先被引用,所以我试图发出警报 当我这么做的时候,什么也没发生 但是,如果我对散列进行注释,一切都很好 也许我对jQuery已经生疏了,错过了一些愚蠢的东西,我不知道 JQUERY $(document).ready(function() { $("#login").submit(function() { -- This block is what

我正在为我的Phonegap应用程序制作登录表单,无法将用户输入发送到我的服务器进行验证

现在,我只是想确保用户输入首先被引用,所以我试图发出警报

当我这么做的时候,什么也没发生

但是,如果我对散列进行注释,一切都很好

也许我对jQuery已经生疏了,错过了一些愚蠢的东西,我不知道

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();

如果未触发警报,这可能意味着您的代码在此之前失败。javascript控制台中是否显示任何异常?我认为NoHashPwd.value是错误的,因为在得到val()的结果后,NoHashPwd将包含一个字符串。另一个选项是hex_sha512在内部生成异常。@apanosa我在这里添加了一个答案,因为您指出NoHashPwd.value可能有错误