2013-03-07 54 views
-4

這段代碼有問題,但我沒有足夠的經驗來弄清楚。希望得到一些幫助。我錯過了這段代碼有什麼不對嗎?

jQuery(document).ready(function(){ 

    $('#contactform').submit(function(){ 

     var action = $(this).attr('action'); 

     $("#message").slideUp(750,function() { 
     $('#message').hide(); 

      $('#submit') 
      .attr('disabled','disabled'); 
    if($('#process').val()=='1'){ 
     $.post(action, $('#contactform').serialize(), 
      function(data){ 
       document.getElementById('message').innerHTML = data; 
       $('#message').slideDown('slow'); 
       $('#contactform img.loader').fadeOut('slow',function(){$(this).remove(); 
                     }); 
       $('#submit').removeAttr('disabled'); 
       if(data.match('success') != null) $('#contactform').slideUp('slow'); 

      } 
     ); 
    else { 
     $.post(action, $('#contactform').serialize(), 
     function(data){ 
       document.getElementById('message').innerHTML = data; 
       $('#message').slideDown('slow'); 
       $('#contactform img.loader').fadeOut('slow',function(){$(this).remove(); 
                     }); 
       $('#submit').removeAttr('disabled'); 
       if(data.match('success') !== null) $('#contactform').slideUp('slow'); 
      } 
     ); 

     }); 

     return false; 
     }); 
    }); 

}); 

謝謝!!!這裏的HTML:

<div id="message"></div> 

    <form method="post" action="contact.php" name="contactform" id="contactform"> 

    <fieldset> 

    <input type="hidden" name="process" id="process" value="1"> 

    <label for="name">Name<span class="required">*</span></label> 
    <input name="name" type="text" id="name" size="30" value="" /> 

    <br /> 
    <label for="email">Email<span class="required">*</span></label> 
    <input name="email" type="text" id="email" size="30" value="" /> 

    <br /> 
    <label for="phone">Phone<span class="required">*</span></label> 
    <input name="phone" type="tel" id="phone" size="30" value="" /> 

    <br /> 
    <label for="comments">Comments<span class="required">*</span></label> 
    <textarea name="comments" cols="40" rows="15" id="comments" style="width: 350px;"></textarea> 

    <br /> 
    <label>Are you human?<span class="required">*</span></label> 

    <label class="accesskey" for="verify">&nbsp;&nbsp;&nbsp;3 + 1 =</label> 
    <input class="accesskey" name="verify" id="verify" size="4" value="" style="width: 30px;" /><br /><br /> 

    <input type="submit" class="submit" id="submit" value="Submit" /> 

    </fieldset> 

    </form> 
</div><!--end contact--> 
+0

它可以幫助您發佈jsfiddle.net示例的鏈接,或發佈您正在使用此jquery代碼片段的html文檔。 – 2013-03-07 01:25:48

+0

或告訴我們這是什麼東西是錯的?也許錯誤信息? – Robbie 2013-03-07 01:26:18

+0

我添加了html,但我真的覺得它只是一個語法錯誤......缺少}或錯位; – hyphen 2013-03-07 01:29:13

回答

2

你缺少else {}elsereturn false之前到底應該},不});至少這是一兩件事。

還有一個令人不安的評論缺乏。

} else { // <= HERE add } 
    $.post(action, $('#contactform').serialize(), 
    function(data){ 
      document.getElementById('message').innerHTML = data; 
      $('#message').slideDown('slow'); 
      $('#contactform img.loader').fadeOut('slow',function(){$(this).remove(); 
                    }); 
      $('#submit').removeAttr('disabled'); 
      if(data.match('success') !== null) $('#contactform').slideUp('slow'); 
     } 
    ); 

} // <= HERE remove); 

return false; 
+0

非常感謝你傑夫!這非常有幫助!其他人:是那麼難? – hyphen 2013-03-07 01:39:28