2011-10-30 58 views
0

我正在做一個簡單的登錄表單與阿賈克斯,我想顯示用戶名稱和圖片 到<div>從php的jQuery.ajax()圖像數據不顯示

顯示用戶名,但圖片不顯示。

 $.ajax({ 

     type: 'POST', 
     url: baseURL, 
     dataType: 'json', 
     data: { 
      action: "LOGIN", 
      username: username, 
      password: password 
     }, 
     success: function(data) { 
      if (data == "empty") { 
       $("#errorArea").fadeIn(); 
       $("#errorArea").html("Error: Wrong username or password"); 

      } 
      else { 
       $("#userPanelContent").html(data); 
      } 
     } 
    }); 

誰能告訴我如何解決它?

+0

的HTML那就是BEING從'baseURL'返回的是這裏的重要部分,從你的標籤中,我假設有PHP代碼生成了這個HTML文件 –

+0

base url保存了一個php文件的路徑,我解決了它是apath的問題,我修復了螢火蟲的幫助,謝謝 – aygeta

回答

0

您可能有相對路徑問題。

確保返回的HTML中的任何相對路徑都與您要加載的頁面相關,或只使用絕對路徑。

+0

圖片路徑被設置到數據庫中通過php查詢獲取圖片路徑並將其發送給變量。 然後,當我訪問該變量img不顯示 – aygeta

+0

你仍然可能有一個相對路徑問題。你在Firebug中看到了什麼? – SLaks

+0

哦,人的感謝,我忘記了螢火蟲......這幫助了我很多..和你在哪裏,這是一個路徑問題......再次感謝螢火蟲它幫助。 :) – aygeta

0

你在說你的返回數據類型是json。所以你需要返回json。但你想要的只是返回一個字符串..所以刪除你的線dataType: "json"它應該工作。

如果你不想刪除您的dataType線,你需要做的是這樣的:

echo json_encode(array('status' => true)); 

然後在成功的情況下的功能,你可以這樣做:」

success: function(data) { 
    if (data.status) { 
     $("#errorArea").fadeIn(); 
     $("#errorArea").html("Error: Wrong username or password"); 
    }else { 
     $("#userPanelContent").html(data); 
    } 
} 
+0

當我控制數據庫中的用戶名和密碼我設置回聲「」如果沒有找到行。這就是爲什麼我寫這個 if(data ==「empty」){(「#errorArea」)。fadeIn(); (「#errorArea」)。html(「錯誤:錯誤的用戶名或密碼」); } else {(「#userPanelContent」)。html(data); } 所以如果數據是空的,這意味着沒有行發現,這是錯誤的用戶名和密碼。螢火蟲幫了忙。這是一個路徑問題。我在php中犯了一些愚蠢的錯誤。再次感謝 – aygeta