繁体   English   中英

jquery .val() 返回未定义

[英]jquery .val() returns undefined

代码的相关部分如下所示。 当我单击“提交”按钮时,在警告框中,我得到的是 undefined,而不是键入的电子邮件。 我在这里犯了什么错误?

<form action="page2.php" method="post" onsubmit="myFunction()" id="form1"> 
        ......
        <input type="text" name="YourEMail" style="width: 250px;"> 
        <input type="submit" name="submit" value="Submit"> <br>
        ......
</form> 

<script>
$('#form1').submit(function() {
    //your validation rules here
    var email = $('#YourEMail').val()
    alert(email)
    //if(email.length == 0)
        return false;
    //else 
    //  return true;
});
</script>

YourEMailname ,而不是id

var email = $('input[name=YourEMail]').val();

或更改input以具有id

<input type="text" id="YourEMail" name="YourEMail" style="width: 250px;"> 

检查这个工作小提琴https://jsfiddle.net/3h4n6qfe/1/

您正在调用一个id并且 jQuery 将其返回为 null,因为您的输入字段没有id

修改自:

<input type="text" name="YourEMail" style="width: 250px;"> 

至:

<input type="text" name="YourEMail" id="YourEMail" value="My Email" style="width: 250px;">

一切顺利!

就我而言,这是因为不同的元素类型具有相同的 ID。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM