2014-07-03 232 views
0

我有一個電子郵件註冊表單,並希望提交按鈕從「提交」更改爲「謝謝」表單發送時。一直在挖掘,一直未能找到解決方案。表單提交後更改提交按鈕的文本?

<form id="signup" action="<?=$_SERVER['PHP_SELF']; ?>" method="get"> 
     <fieldset> 

      <span id="response"> 
       <? require_once('inc/store-address.php'); if($_GET['submit']){ echo storeAddress(); } ?> 
       </span> 
      </label> 
      <input type="text" name="email" id="email" placeholder="your e-mail address" /> 
      <input type="submit" name="submit" value="submit" class="btn" alt="submit" /> 

      <div id="no-spam"><!--We'll never spam or give this address away--></div> 
     </fieldset> 
    </form>  

我使用MailChimp的簡單的在這裏訂閱:http://apidocs.mailchimp.com/downloads/mcapi-simple-subscribe-jquery.zip

感謝您的幫助!

+0

你怎麼知道的形式submited與否? YOu使用PHP或jQuery完成表單提交 –

+0

將其更改爲'value =「謝謝」' – Barmar

回答

0

試試這個

$("#signup").submit(function(e) 
{ 
    var postData = $(this).serializeArray(); 
    var formURL = $(this).attr("action"); 
    $.ajax(
    { 
     url : formURL, 
     type: "POST", 
     data : postData, 
     success:function(data, textStatus, jqXHR) 
     { 
      $("input[type='submit']").val("Thanks"); 
     }, 
     error: function(jqXHR, textStatus, errorThrown) 
     { 
      //if fails  
     } 
    }); 
    e.preventDefault(); //STOP default action 
    e.unbind(); //unbind. to stop multiple form submit. 
}); 

$("#signup").submit(); 
1

你可以使用速記if語句來改變結果,你並不需要JavaScript來做到這一點。除非那是你需要的?

<input type="submit" name="submit" value="<?=($_GET['submit'])? "Thanks" : "Submit"?>" class="btn" alt="submit" /> 
+0

嗯,這沒有奏效。也許ajaxy響應文本與東西混合?看到這裏:[http://the-contrary.com/](http://the-contrary.com/) – proulxsie

+0

你試過'$ _REQUEST ['submit']'而不是'$ _GET ['submit'] '? – JammyDodger231

0

首先,添加一個onsubmit屬性。

<form id="signup" action="<?=$_SERVER['PHP_SELF']; ?>" method="get" onsubmit="sayThanks()"> 

添加id的提交按鈕:

<input type="submit" name="submit" id="submitButton" value="submit" class="btn" alt="submit" /> 

最後,聲明sayThanks()功能:

function sayThanks(){ 
    document.getElementById("submitButton").value = "Thanks!"; 
} 
+0

這個作品,謝謝! – proulxsie

+0

嗨@proulxsie如果這個或任何答案已經解決了您的問題,請點擊複選標記考慮[接受它](http://meta.stackexchange.com/q/5234/179419)。這向更廣泛的社區表明,您已經找到了解決方案,併爲答覆者和您自己提供了一些聲譽。沒有義務這樣做。我很高興它爲你工作。 – Nateowami