2013-06-24 9 views
0

我有一個簡單的JQM網站,我正在處理。我試圖在表單中動態驗證用戶名的可用性。我正在使用jquery $ .get()ajax返回「成功」或「失敗」,但返回的數據正被替換爲前一頁的代碼。

$(document).on('pageinit', function() { 

    // check to see if username is available 
    $("#username").change(function() { 
     $.get("controller.php", { action: "check_username", username: username }, function(data) { 
     console.log(data); 
    }  
}); 

的Controller.php這樣正在檢查用戶名的可用性,並返回「合格」或「不合格」當我這樣做,我很期待可以通過或失敗的console.log(數據),它的日誌從前一頁的代碼?

我在想也許這是一個JQM緩存問題,所以我試圖禁用緩存沒有任何效果。我正在使用JQM對話框來顯示錶單。認爲與它有關,我把它拉出來,並加載了一個直接的鏈接。這並沒有解決它,所以我試圖加載頁面直接使用

$.mobile.changePage("user-new.php", { reloadPage: true});

我難倒。爲什麼$ .get ajax調用會返回上一頁返回的代碼?

+0

你有重複的'id'嗎?嘗試刪除'pageinit'綁定並用'.on('change',function'替換'.change' – Omar

回答

0

這是一張臉掌!我的控制器正在進行身份驗證並將其踢回登錄頁面。顯然,php重定向與ajax返回數據的行爲有些相似。而是返回登錄頁面代碼,它返回上一頁的代碼。我刪除了身份驗證,它工作正常。難以置信的!我要去加油站工作或者其他東西:)