2014-03-06 107 views
0

我是jQuery手機新手,我剛剛開始將它用於只能通過智能手機使用的WordPress網站。我喜歡現在看起來我添加了jQm的方式。jQuery Mobile:提交表單不在「謝謝」頁面

我遇到的問題是,在我提交表單後,它正確地將我帶到「謝謝」頁面,該頁面此時只是一行文本閱讀「感謝您玩」,但是之後立即它可以追溯到它來自的原始形式。我可能無法更好地解釋這一點,所以我在此處錄製了一個視頻:http://screencast.com/t/QMD0BProSg

如果我用「$ .mobile.ajaxEnabled = false;」禁用ajax,它的工作原理,這意味着它不會回到我的形式,但有一個啓用和按照它應該的方式工作,將消除我有一些其他問題。修復這種行爲將爲我節省很多時間!

這裏的HTML:

<form id="stop-spin" action="/thanks-for-playing" method="post"> 
    <input type="hidden" id="stop-spin-nonce" name="stop-spin-nonce" value="c96ef6a79f"> 
    <input type="hidden" name="_wp_http_referer" value="/spinner/"> 
</form> 
<div class="play-button"> 
    <a href="javascript:void(0);" id="start-rotation" class="ui-link"></a> 
    <a href="javascript:void(0);" id="stop-rotation" style="display: none;" class="ui-link"></a> 
</div> 

我刪除爲了簡單起見,多餘的元素,但值得注意的是,我的表格沒有一個按鈕裏面,我要做的就是捕捉的Click事件#停止旋轉錨點通過jQuery和我做表格提交那裏。

這裏是我的jQuery:

$(document).on('pageinit ready', function() { 
    $(document).on('click', '.play-button a#stop-rotation', function() { 
     $('#stop-spin').submit(); 
    }); 
}); 

我可能會丟失一些東西很明顯這裏,任何人都可以幫我這個?

目前這個小應用程序只是本地的,但我可以嘗試和建立一個小提琴或上傳到我的測試服務器,如果有人想看看它作爲一個整體。

在此先感謝您的幫助

+0

add return false; $('#stop-spin').submit();並看看它是否有幫助 – Satya

回答

0

更正您的代碼,這應該做的工作。例如,您將永遠不需要JQM中的ready()事件,將其替換爲pageinit()或pageshow()。

$(document).on('pageinit', function() { 
    $('.play-button a#stop-rotation').on('click', function() { 
     $('#stop-spin').submit(); 
     return false; 
    }); 
}); 
+0

謝謝,但它仍然如此:還有其他想法嗎? – andrux

+0

也許這可能有所幫助,我只是注意到當事情回到原始頁面時我得到這個錯誤:未捕獲的錯誤:不能在初始化之前調用頁面上的方法;試圖調用方法'bindRemove'。如果我再次單擊Spin按鈕 – andrux

+0

發佈您的目標頁面代碼,也許出現了錯誤... – tronc

相關問題