2017-09-01 64 views
3

如何更改下面的代碼(.js中的聯繫表)以便「nazwisko」字段不是必填字段?這是來自.php聯繫表單的一個文件。我正在檢查一些選項,但我不太熟悉.js。只需從代碼中刪除這個「nazwisko」行就足夠了,還是應該在請求旁邊加上「false」? 感謝您的支持!以聯繫表格更改驗證要求

$(document).ready(function(){ 

/***************************************/ 
/* Form validation */ 
/***************************************/ 
$('#j-forms').validate({ 

    /* @validation states + elements */ 
    errorClass: 'error-view', 
    validClass: 'success-view', 
    errorElement: 'span', 
    onkeyup: false, 
    onclick: false, 

    /* @validation rules */ 
    rules: { 
     nazwisko: { 
      required: true 
     }, 
     dataur: { 
      required: true 
     }, 
     email: { 
      required: true, 
      email: true 
     }, 
     'imiona-rodzice': { 
      required: true 
     }, 
     telefon: { 
      required: true 
     }, 
     klasa: { 
      required: true 
     }, 
     szkola: { 
      required: true 
     }, 
     adres: { 
      required: true 
     }, 
     telkur: { 
      required: true 
     } 
    }, 
    messages: { 
     nazwisko: { 
      required: 'Podaj swoje Imię i Nazwisko' 
     }, 
     dataur: { 
      required: 'Podaj swoją datę urodzenia' 
     }, 
     'imiona-rodzice': { 
      required: 'Podaj imiona rodziców' 
     }, 
     telefon: { 
      required: 'Podaj telefon do rodziców' 
     }, 
     klasa: { 
      required: 'Podaj swoją klasę' 
     }, 
     szkola: { 
      required: 'Podaj swoją szkołę' 
     }, 
     adres: { 
      required: 'Podaj swój adres' 
     }, 
     telkur: { 
      required: 'Podaj swój telefon' 
     }, 
     email: { 
      required: 'Podaj adres email', 
      email: 'Niepoprawny format' 
     }, 

    }, 
    // Add class 'error-view' 
    highlight: function(element, errorClass, validClass) { 
     $(element).closest('.input').removeClass(validClass).addClass(errorClass); 
     if ($(element).is(':checkbox') || $(element).is(':radio')) { 
      $(element).closest('.check').removeClass(validClass).addClass(errorClass); 
     } 
    }, 
    // Add class 'success-view' 
    unhighlight: function(element, errorClass, validClass) { 
     $(element).closest('.input').removeClass(errorClass).addClass(validClass); 
     if ($(element).is(':checkbox') || $(element).is(':radio')) { 
      $(element).closest('.check').removeClass(errorClass).addClass(validClass); 
     } 
    }, 
    // Error placement 
    errorPlacement: function(error, element) { 
     if ($(element).is(':checkbox') || $(element).is(':radio')) { 
      $(element).closest('.check').append(error); 
     } else { 
      $(element).closest('.unit').append(error); 
     } 
    }, 
    // Submit the form 
    submitHandler:function() { 
     $('#j-forms').ajaxSubmit({ 

      // Server response placement 
      target:'#j-forms #response', 

      // If error occurs 
      error:function(xhr) { 
       $('#j-forms #response').html('An error occured: ' + xhr.status + ' - ' + xhr.statusText); 
      }, 

      // Before submiting the form 
      beforeSubmit:function(){ 
       // Add class 'processing' to the submit button 
       $('#j-forms button[type="submit"]').attr('disabled', true).addClass('processing'); 
      }, 

      // If success occurs 
      success:function(){ 
       // Remove class 'processing' 
       $('#j-forms button[type="submit"]').attr('disabled', false).removeClass('processing'); 

       // If response from the server is a 'success-message' 
       if ($('#j-forms .success-message').length) { 

        // Remove classes 'error-view' and 'success-view' 
        $('#j-forms .input').removeClass('success-view error-view'); 
        $('#j-forms .check').removeClass('success-view error-view'); 

        // Reset form 
        $('#j-forms').resetForm(); 

        // Prevent submitting the form while success message is shown 
        $('#j-forms button[type="submit"]').attr('disabled', true); 

        setTimeout(function(){ 
         // Delete success message after 5 seconds 
         $('#j-forms #response').removeClass('success-message').html(''); 

         // Make submit button available 
         $('#j-forms button[type="submit"]').attr('disabled', false); 
        }, 5000); 
       } 
      } 
     }); 
    } 
}); 
/***************************************/ 
/* end form validation */ 
/***************************************/ 
+0

您想使該字段爲「nazwisko」嗎? –

+0

java!= javascript ..還有哪裏是php? –

+0

是的,我需要讓「nazwisko」字段不需要:) – PiKej

回答

0

爲@Amit說: 只有改變規則部分這一行。 沒有必要更改或刪除消息部分本身的消息。

/* @validation rules */ 
rules: { 
    nazwisko: { 
     required: false 
    }, 
+0

謝謝。我試過這個解決方案,它沒有工作:( – PiKej

+0

它的工作原理,對不起,我只是不得不改變瀏覽器/清除歷史... – PiKej

+0

很高興聽到@PiKej,那麼你可以標記你的問題爲答案。 – MattOpen