Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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 JS";在「;错误IE7/8_Javascript_Jquery_Validation - Fatal编程技术网

Javascript JS";在「;错误IE7/8

Javascript JS";在「;错误IE7/8,javascript,jquery,validation,Javascript,Jquery,Validation,我正在使用jquery验证插件对我网站中的一些表单进行验证。但是表单的一个验证并不仅仅适用于IE7和IE8。但是使用相同验证脚本的其他表单也可以工作。我试着调试,发现问题出在错误部分,当我使用“for in”JS循环遍历errorMap时,show对象不支持错误。你知道怎么修吗 这是我得到的HTML <form name="donate" id="form1" action="https://www.xxxx.xxx.xx/api/help" method="POST" target="_

我正在使用jquery验证插件对我网站中的一些表单进行验证。但是表单的一个验证并不仅仅适用于IE7和IE8。但是使用相同验证脚本的其他表单也可以工作。我试着调试,发现问题出在错误部分,当我使用“for in”JS循环遍历errorMap时,show对象不支持错误。你知道怎么修吗

这是我得到的HTML

<form name="donate" id="form1" action="https://www.xxxx.xxx.xx/api/help" method="POST" target="_top">     
            <input type="hidden" name="face" id="faceinput" style="clear: both; margin:0; padding:0;">
            <input type="hidden" name="image" id="imageinput" style="clear: both; margin:0; padding:0;">
            <h3>Thank you for helping! </h3>
            <h4>Please fill out the following details.</h4>     
            <label>Name: </label>
            <input type="text" name="fullname" id="fullname" class="required" />
            <div class="clearfix"></div>
            <label>Email: </label>
            <input type="text" name="email" id="email" class="required email" />
            <div class="clearfix"></div>
            <label>Amount: </label>
            <input type="text" name="amount" id="amount" class="required number minStrict" /><input type="button" id="submitBtn" value="Donate" />
            <div class="clearfix"></div>
            <div id="error" style="display:none;">
                Oops! The minimum amount to donate is $6. Don't wish to donate? Please click on the close button on the top right hand corner instead.
            </div>
        </form>
错误

SCRIPT438:对象不支持此属性或方法 validate.js,第26行,字符5

只需添加var错误即可修复


对于(errorMap中的var error){/

我不确定原因,但使用

for(var error in errorMap){

似乎可以解决您在评论中发布的问题…

我不确定原因,但使用

for(var error in errorMap){


似乎可以解决您在评论中发布的问题…

这不是问题,但您可能希望使用
for(errorMap中的var error){
,这样
错误
就不会在全球范围内公开所以它不会提醒
错误
?您在“validate.js”文件中发布的js代码是“validate.js”还是“validate.js”是另一个单独的文件吗?validate.js是同一个文件我有那个脚本inoh wow谢谢Ian我认为它可以通过添加var error来工作这不是问题,但是你可能想使用
for(errorMap中的var error){
这样
错误
就不会在全球范围内公开,所以它不会提醒
错误
?是您在“validate.js”文件中发布的js代码还是“validate.js”是另一个单独的文件吗?validate.js是同一个文件我有那个脚本inoh wow谢谢Ian我认为它通过添加var error来工作非常好奇为什么在全局范围内使用
error
会导致问题?如果在全局范围内定义
var error;
,然后使用
for(errorMap中的错误)会怎么样{
。我在这里假设
error
被定义为这个范围内jQuery功能的一部分。因此返回的错误
对象不支持这个属性或方法
。这就解释了它!好吧,我想关键是如果在声明变量时不使用
var
,它会在因此,由于循环在技术上声明了一个局部变量(以任何方式),不使用
var
就可以做到这一点。因此,您真的不必在全局范围内声明
error
,只要与
for
循环在同一范围内就可以了。如果jQuery在此范围内定义了
error
,则循环应该覆盖它。但是jQuery无法在不传递pa的情况下神奇地填充范围参数(OP将其定义为
errorMap
errorList
…无
errors
),因此我也很好奇为什么会出现问题。除非你能纠正我的错误misunderstanding@Lavabeams但同时,可能会有一个变量
errors
声明在与原始
相同的范围内$(“#form1”)。验证({
,但我认为循环只是覆盖了值。我不知道……。非常好奇为什么在全局范围内使用
error
会导致问题?如果在全局范围内定义
var error;
,然后使用
for(errorMap中的错误)会怎么样{
。我在这里假设
error
被定义为这个范围内jQuery功能的一部分。因此返回的错误
对象不支持这个属性或方法
。这就解释了它!好吧,我想关键是如果在声明变量时不使用
var
,它会在因此,由于循环在技术上声明了一个局部变量(以任何方式),不使用
var
就可以做到这一点。因此,您真的不必在全局范围内声明
error
,只要与
for
循环在同一范围内就可以了。如果jQuery在此范围内定义了
error
,则循环应该覆盖它。但是jQuery无法在不传递pa的情况下神奇地填充范围参数(OP将其定义为
errorMap
errorList
…无
errors
),因此我也很好奇为什么会出现问题。除非你能纠正我的错误misunderstanding@Lavabeams但同时,可能会有一个变量
errors
声明在与原始
相同的范围内$(“#form1”).validate({
),但我认为循环只是覆盖了值。我不知道。。。。。。。