2012-09-20 65 views
1

我翻看了所有類似的問題,然後輸入這個問題,但我找不到我的問題的答案。我正在使用jQuery Mobile(1.1)和jQuery(1.7.1)開發一個小型門戶網站。因此,我將它全部放在一個頁面上,並使用data-role =「page」來處理流程轉換。jQuery Mobile:首次訪問時頁面沒有完全加載

流量是目前這樣的:

  1. 用戶訪問的主要URL
  2. 上的動作(「做這個」或「做」)
  3. 當用戶點擊動作
  4. 用戶點擊(這兩個標籤都只有一個帶有data-role =「button」的另一個文件的href),它將它們帶到那個頁面就好了。

但是,當第一次訪問該頁面(通過手動輸入URL或單擊操作按鈕/鏈接)時,表單爲空,並且單擊提交按鈕將不執行任何操作。刷新頁面後,雖然一切正常,但它應該。

所以,比方說有人點擊操作鏈接#1(「付款」):

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> 
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.css" /> 
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
<script src="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.js"></script> 
<title>Credit Card Payments</title> 
<style> 
    .ui-dialog .ui-header a[data-icon=delete] { display: none; } 
</style> 
<script> 
$(document).bind("mobileinit", function(){ 
}); 
</script> 
</head> 
<body> 
    <div data-role="dialog" id="popup"> 
     <div data-role="header" data-theme="b" data-content-theme="b"> 
      <h1>Destination</h1> 
     </div> 
     <div data-role="content" data-theme="b" data-content-theme="b"> 
      Please choose what you would like to do: 
      <a href="payment.php" data-role="button">Make A Payment</a> 
      <a href="create.php" data-role="button">Add Credit Card To Account</a> 
     </div> 
    </div> 
</body> 
</html> 

這需要他們「payment.php」,並顯示頁ID「第一步」,這是一個簡單的日誌形式:

<div data-role="page" id="step1"> 
    <div data-role="header"> 
     <h2>Log In</h2> 
    </div> 
    <form id="step1frm"> 
     <div data-role="fieldcontain"> 
      <label for="mail">Blesta e-mail: </label> 
      <input type="text" name="mail" id="mail" /> 
     </div> 
     <div data-role="fieldcontain"> 
      <label for="pw">Blesta password: </label> 
      <input type="password" name="pw" id="pw" /> 
     </div> 
      <input type="button" id="step1frmsub" value="Log In" /> 
    </form> 
</div> 

的日誌表單頁面也有很多的JQM的東西,但在我出評論的所有代碼,所以這不是因爲它沒有任何改變。我也通過W3.org驗證了HTML,並且它有效。

的發生了什麼事可以在屏幕截圖我把Chrome的督察中找到一個更好的表示:

首次訪問 - after clicking "make a payment"

後刷新頁面 - after refreshing the login for "make a payment"

編輯 - 作爲一個小的跟進,我注意到「data-external-page =」true「」正在加載的div頁面上設置,然後刷新它再也不存在了。根據我對我讀過的內容的理解,這是因爲它基本上來自對話框,但我不確定是否有辦法禁用該對話框。

回答 - 好了,解決了這個之後,最初以爲是不是我要找的,實際上這種添加到我的鏈接:

rel="external" 

讓他們看起來像這樣:

<a href="payment.php" data-role="button" rel="external">Make A Payment</a> 
+0

我看你已經回答了你自己的問題!使用該信息爲此問題創建一個新答案,並將其標記爲接受的答案。 :-) –

回答

1

好了,解決了這個之後,最初以爲是不是我要找的,實際上這種添加到我的鏈接:

rel="external" 

讓它們看起來像這樣:

<a href="payment.php" data-role="button" rel="external">Make A Payment</a> 
相關問題