2013-07-02 123 views
1

我在IE9中得到上述错误,我看不出为什么会发生这种情况。我试图找到解决这个问题的方法,但我处于死胡同。有人可以指出我出错的地方吗?起初我认为这可能是最后一个逗号,但并非如此。由于IE9预期的标识符,字符串或数字错误

jQuery代码

$.validator.setDefaults ({ 

     errorClass: 'form_error', 
     errorElement: 'div' 
    }); 

    $("#BA_boxform").validate({ 
     rules: { 
      BA_customer: { 
       required: true 
      }, 
      customerdept: { 
       required: true 
      }, 
      customeraddress: { 
       required: true 
      }, 
      BA_service: { 
       required: true 
      }, 
      BA_box: { 
       required: true 
      }, 
      BA_destdate: { 
       required: true 
      }, 
      BA_authorised: { 
       required: true 
      } 
     }, 
     messages: { 
      BA_customer: { 
       required: '<br />* required: You must select a customer' 
      }, 
      customerdept: { 
       required: "<br />* required: You must select a department" 
      }, 
      customeraddress: { 
       required: "<br />* required: You must select a customer address" 
      }, 
      BA_service: { 
       required: "<br />* required: You must select a service level" 
      }, 
      BA_box: { 
       required: "<br />* required: You must enter a box number for intake" 
      }, 
      BA_destdate: { 
       required: "<br />* required: You must enter a destruction date" 
      }, 
      BA_authorised: { 
       required: "<br />* required" 
      } **<--- error is reported here** 
     }, 
    }); 

回答

3

问题是与后面的逗号:

 } **<--- error is reported here** 
    }, <--- problem is here 
+0

为什么此验证在IE7/8中不起作用。在9/10中很好 – user1532468

+0

@ user1532468由于IE7/8处理无效的JSON与IE9 +不同, –

1

messages属性中删除逗号。数组中的最后一个元素不应该包含逗号,否则IE会抛出错误。

$("#BA_boxform").validate({ 
    rules: { 
     // rules 
    }, 
    messages : { 
     // messages. 
    }, // REMOVE THE TRAILING COMMA 
}); 

应改为

$("#BA_boxform").validate({ 
    rules: { 
     // rules 
    }, 
    messages : { 
     // messages. 
    } 
}); 
1
messages: { 
      BA_customer: { 
       required: '<br />* required: You must select a customer' 
      }, 
      customerdept: { 
       required: "<br />* required: You must select a department" 
      }, 
      customeraddress: { 
       required: "<br />* required: You must select a customer address" 
      }, 
      BA_service: { 
       required: "<br />* required: You must select a service level" 
      }, 
      BA_box: { 
       required: "<br />* required: You must enter a box number for intake" 
      }, 
      BA_destdate: { 
       required: "<br />* required: You must enter a destruction date" 
      }, 
      BA_authorised: { 
       required: "<br />* required" 
      } **<--- error is reported here** 
     }, // <- Problem is here 

删除最后Comma.It应该正常工作。

相关问题