2011-11-09 1 views
0

양식에 jQuery 유효성 검사 코드가 있습니다. 그러나 개발자 도구에서 ie9 브라우저 모드로 ie9를 설정하면 오류가 발생하고 유효성 검사가 작동하지 않습니다.jQuery 오류가 ie7이 아님 9

나는 무엇이 문제인지 볼 수 없습니까?

오류 메시지는 message라는 단어 위에있는 줄입니다.

SCRIPT1028: Expected identifier, string or number 
confirm, line 587 character 25 

코드는 다음과 같습니다

  $().ready(function() { 

       // validate signup form on keyup and submit 
       $("#signupForm").validate({ 
        rules: { 
         'data[User][email]': {required: true, email: true}, 
         'data[User][firstname]': {required: true}, 
         'data[User][surname]': {required: true}, 
         'data[User][address1]': {required: true}, 
         'data[User][city]': {required: true}, 
         'data[User][state]': {required: true}, 
         'data[User][phone]': {required: true, digits: true}, 
         'user_terms': 'required', 
         'data[User][card_type]': {required: true}, 
         'data[User][card_number]': {required: true, creditcard: true}, 
         'data[User][card_type]': {required: true}, 
         'data[User][card_name]': {required: true}, 
         'data[User][card_cvv]': {required: true,digits: true, minlength: 3, maxlength:3 }, 
         'data[User][card_expires]': {required: true} 


        }, // This is the line ie7 complains about 
        messages: { 
         UserEmail: {required: "Please enter a valid email address"}, 
         UserFirstname: {required: "Please enter your firstname"}, 
         UserSurname: {required: "Please enter your lastname"}, 
         UserAddress1: {required: "Please enter your Address"}, 
         UserCity:  {required: "Please enter your City"}, 
         UserState:  {required: "Please enter your State"}, 
         UserPhone:  {required: "Please enter your Phone"}, 
         user_terms:   'You must agree to the terms and conditions', 
         UserCardType:  {required: "Please select your Card Type"}, 

        }, 
        errorPlacement: function(error, element) { 
          error.appendTo(element.parent().next()); 
        }, 
        submitHandler: function() { 
         $('#checkoutBT').hide(); 
         var $bookingNow = $('<div id="bookingNow" class="ui-button ui-widget ui-state-default ui-corner-all"><img src="https://www.treacyshotelwaterford.com/res360/res/app/webroot/images/forms/ajax-loader.gif" /> Booking Now</div>'); 
         $('.checkout').append($bookingNow); 
         form.submit(); 
        } 

       }); 
+2

개체의 후행 쉼표를 모두 제거했는지 확인하십시오. IE는 싫습니다. –

+0

단어 메시지 앞에 줄의 쉼표를 제거 하시겠습니까? –

+0

그 쉼표는 괜찮습니다. 더 이상 요소가없는 쉼표가 필요합니다. 또한 IE가 말하는 라인 번호를 항상 신뢰할 수있는 것은 아닙니다. –

답변

4

IE는 배열과 객체에 쉼표를 후행에 맞는 던져 경향이있다. 다음 줄에서 제거하십시오 :

UserCardType:  {required: "Please select your Card Type"}, 
+0

고마워, 그게 다야. –

관련 문제