jQuery .val()返回错误

时间:2011-07-10 15:13:10

标签: jquery input get

我以简单的形式提供以下内容;

<form method="post" action="inc/core.php">
    <input type="textbox" name="lognick" value="samp" />
    <input type="password" name="logpass" />
</form>

我正试图通过它来获得价值;

var logname = $("input[name=lognick]").val();
var logpass = $("input[name=logpass]").val();

logname始终返回“samp”(默认值)和logpass undefined。我也尝试使用.attr("value"),但结果相同。

当尝试在空白页面上使用它时,它可以完美地工作。 这是整个onclick功能; http://pastebin.com/pQiVAuEW

谢谢!

3 个答案:

答案 0 :(得分:0)

我无法复制问题,我可以正常访问该值。密码框没有值,因此应该是未定义的。

请参阅this JSFiddle

答案 1 :(得分:-1)

您是否尝试过$('#some_id').val()document.getElementById("some_id").value?如果它们不起作用,您是否在正确的位置调用该功能?可能会发生这样的情况:代码(我猜想的是JavaScript)是在表单的写入阶段运行的,而不是在您键入值之后运行。

答案 2 :(得分:-1)

真的很难复制这个&#34; bug&#34;。上面的解决方案对我来说不起作用,但我的工作......最后:D

<input id="myId" name="myName" onchange="$(this).attr('custom_val',$(this).val());" type="text" /> 

然后得到这样的值:

var myValue= $("input#myId").attr("custom_val");