Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery表单提交不';似乎不会触发if语句_Javascript_Jquery_Forms_Input_Submit - Fatal编程技术网

Javascript jQuery表单提交不';似乎不会触发if语句

Javascript jQuery表单提交不';似乎不会触发if语句,javascript,jquery,forms,input,submit,Javascript,Jquery,Forms,Input,Submit,我有这个错误,但我不知道如何修复它。我使用了JSLint并得到了一些结果(它只是告诉我文档不是全局值,或者不需要'else子句',等等),但没有解决方案 我有一个表格要提交,我需要比较两个电子邮件字段是否相等。所以我想要一个简单的email1==email2脚本,jQuery不是我的强项,但我想到了这个: 我的表单ID是“regIn”,我的电子邮件字段分别是type=“email”(HTML5)和ID=“MailA”和ID=“MailB” 我已经预装了jquery 1.11.1.min.js 我

我有这个错误,但我不知道如何修复它。我使用了JSLint并得到了一些结果(它只是告诉我
文档
不是全局值,或者不需要'else子句',等等),但没有解决方案

我有一个表格要提交,我需要比较两个电子邮件字段是否相等。所以我想要一个简单的email1==email2脚本,jQuery不是我的强项,但我想到了这个:

我的表单ID是“regIn”,我的电子邮件字段分别是
type=“email”
(HTML5)和
ID=“MailA”
ID=“MailB”

我已经预装了jquery 1.11.1.min.js

我的jQuery代码(请参见下面为什么
#遗忘的
仍在其中):

//*参考;但这不在代码中:
alert('alert1')

因此,我使用警报来查看脚本运行到什么程度(我知道,俗气的调试)。firebug不会报告我能看到的页面错误或脚本错误。“警报1”总是在表单提交时触发,并成功地向我显示
#MailA.val()
#MailB.val()
的值

但是
if
语句似乎根本没有启动。我尝试过创建值变量(
var d1=$('#MailA').val()
等),但这并没有改变任何事情,表单总是提交,而且无论是
if
还是
else
(它确实围绕着
if
语句子句下面的文本,但是JSLint说不需要它,所以我删除了它)

我还使用了不同的语法,使用了
=
==
但是也从JSLint那里读到了
==
==是首选

我的HTML:

 <form enctype="multipart/form-data" name="regIn" id="regIn" autocomplete="off" accept-charset="utf-8" action="#" method="post">

    <div class="inputContainer">
        <input type="email" value="" tabindex="31" id="MailA" name="regMailA" required>
    </div>

    <div id="errorMsg"></div>

    <div class="inputContainer">
        <input type="email" value="" id="MailB" tabindex="32" name="regMailB" required>
    </div>

    <div class="registerRow">
        <input type="submit" class="regButton" value="Register" tabindex="34">
    </div>
</form>

正如我所说,我已经环顾了大约一个小时,我就是看不到它是什么


很明显,对于这个问题,代码被剥离了,唯一的另一个方面是在
document ready
函数中有另一个jQuery片段-如图所示,
#遗忘的
用于显示/隐藏信息。盒子,这个很好用

请注意,您正在使用:

$('#errorMsg').innerHTML("Emails need to be the same!");
如果您试图提醒
$('#errorMsg')。innerHTML
它将是未定义的

当您使用JQuery选择器
$('#errorMsg')
时,JQuery将使用拥有JQuery特殊方法(val、html等)的JQuery dom对象包装dom对象,因此您无权访问核心方法
innerHTML
,而应使用:

$('#errorMsg').html("Emails need to be the same!");

享受吧

请注意:它必须是
$('#errorMsg').html(“电子邮件必须相同!”)
$('#errorMsg').innerHTML("Emails need to be the same!");
$('#errorMsg').html("Emails need to be the same!");