2013-07-25 105 views
0

所以我下載一個HTML模板,我不能得到的聯繫方式,以工作..聯繫表格PHP和jQuery

因此,這裏的聯繫方式:

<form id="contact" action="contact.php" method="get" /> 
<div class="row-fluid"> 
    <p class="span12"> 
     <label for="name" class="second-color"> 
      Nome</label> 
     <input type="text" id="name" name="name" class="required second-color span12" maxlength="25" /> 
    </p> 
</div> 
<div class="row-fluid"> 
    <p class="span12"> 
     <label for="email" class="second-color"> 
      E-mail</label> 
     <input type="text" id="email" name="email" class="required second-color email span12" maxlength="25" /> 
    </p> 
</div> 
<div class="row-fluid"> 
    <p class="span12 multi"> 
     <label for="comment" class="second-color"> 
      Mensagem</label> 
     <textarea id="comment" name="comment" class="required second-color span12"></textarea> 
    </p> 
</div> 
<a href="javascript:;" class="btn medium color1 hidden-tablet hidden-phone">ENVIAR MENSAGEM</a> 
<a href="javascript:;" class="btn small color1 visible-tablet visible-phone">ENVIAR MENSAGEM</a> 
<div id="loadingForm"> 
    <img src="assets/images/loading.gif" alt="loading" /> 
</div> 
</form> 

而且對JavaScript文件,我有這樣的代碼是有關的形式:

/*post operation for contact page*/ 
$("#contact a").click(function() { 
    $('#contact #loadingForm').fadeIn('slow'); 

    /*function which validates input with required class in contact page */ 
    var myform = $("#contact").validate({ 
     email: true, 
     errorPlacement: function (error, element) { 
      error.appendTo(); 
     } 
    }).form(); 

    /*myform returns true if form is valid.*/ 
    if (myform) { 
     var action = $("#contact").attr('action'); 
     $.post(action, { 
      name: $('#name').val(), 
      email: $('#email').val(), 
      web: $('#web').val(), 
      message: $('#message').val() 
     }, 
     function (data) { 
      d = data; 
       $('.response').remove(); 

      if (data == 'Message sent!') { 
       $('#contact a').attr('disabled', ''); 
       $('#contact').append('<span class="success"></p>'); 
      } 
      else { 
       $('#contact').append('<span class="response"></span>'); 
      } 
     }); 
    } 
    $('#contact #loadingForm').fadeOut('slow'); 
    return false; 
}); 

所以,現在,我需要做什麼接觸工作?該模板位於ajax上,因此表單無法重新加載頁面,因爲如果頁面被重新加載,背景音樂將停止。

我必須創建文件contact.php,但是,如果我這樣做,頁面將重新加載時,我點擊按鈕,對不對?

任何人都可以幫助我嗎?

+0

沒有也不會因爲'返回false重裝;'這將防止默認操作。你也許意味着鏈接,而不是按鈕。你爲什麼不試試,讓我們知道你有什麼問題。 –

回答

1

如果您像使用Ajax一樣調用它,則您的頁面不會重新加載。只要確保表單不提交。

我想補充:

$("#contact a").click(function (event) { 
    event.preventDefault(); 

爲了確保您的網頁將無法在點擊重新加載。

然後在PHP端你可以使用這樣的事情:

<?php $name = $_POST['name']; 
$email = $_POST['email']; 
$message = $_POST['message']; 
$formcontent="From: $name \n Message: $message"; 
$recipient = "[email protected]"; 
$subject = "Contact Form"; 
$mailheader = "From: $email \r\n"; 
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!"); 
echo "Message sent!"; 
?> 
+0

嘿,你是否能夠做到這一點? –