2012-05-21 13 views
0

所以,我有一個ajax後,調用一個服務,並返回一個對象,我想分析成功。Jquery Ajax Post - >只有當我通過Ajax調用,只有一些時候.......任何想法?

我在vs2010中運行它,它只適用於我通過ajax後代碼的步驟,它只適用於部分時間。

這個調用與我已經完成的其他頁面基本相同,所以我非常困惑,爲什麼這不起作用。

$.ajax({ 
       type: "POST", 
       url: webMethod, 
       data: parameters, 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       success: function (obj) { 
        alert("Success"); 
        parseStart(obj.d, id, idnum, parseType); 
       }, 
       error: function (e) { 
        alert("Failure. :" + e); 
       } 
      }); 

它確實是標準的,我不知道它爲什麼這樣做。我只是希望以前有人經歷過類似的事情。就像我說過的,只有通過ajax代碼才能獲得成功。如果我不通過它就好像它從來沒有成功或失敗.....這真的很奇怪。 (所以我沒有看到我的提醒等,如果我沒有通過它)我有一個建議,這可能是我的對象的大小,我從我的服務返回,所以我修剪到接近沒有,那沒有幫助。

對此的任何思想方向非常感謝。我目前很難過。

+0

我相信我發現這是由於發佈在webmethod中發佈的內部方法發佈在帖子內的帖子,因爲我無法刪除此問題,因此發佈了有關此問題的另一個問題。 –

+0

並不想創造一個漫無邊際的主題問題。 –

回答

0

好的,經過很長時間的故障排除這一點。我將按鈕調用切換到主體onload,點擊按鈕即可完成此操作,而不會出錯。這是由於我使用了一個asp按鈕,當點擊打斷我的帖子時產生了一個回調。然後我刪除了我的asp按鈕,並用一個輸入按鈕替換它們。

0

這可能是服務器沒有返回一個200.也許它返回一個304沒有修改或臨時重定向。

Difference between .success() and .complete()?

.success()如果你的服務器有200 OK HTTP標頭只響應被稱爲 - 基本上,當一切都很好。

然而,.complete()總是會得到所謂的不管Ajax調用是SUC

+0

好主意,新增了.complete(),但仍然沒有收到我在那裏提供的提醒。 –

+0

小提琴手說什麼? – FlavorScape

+0

終於明白了我的答案在下面。無法標記21小時。 –

0

我想我知道它是什麼。 ajax調用是異步的,對吧?所以需要一段時間才能得到迴應。但是,如果通過鏈接或表單按鈕生成此調用,並且此處不返回false,則會發生正常的get或post。調用$ .ajax()後返回false。

$.ajax({ 
       type: "POST", 
       url: webMethod, 
       data: parameters, 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       success: function (obj) { 
        alert("Success"); 
        parseStart(obj.d, id, idnum, parseType); 
       }, 
       error: function (e) { 
        alert("Failure. :" + e); 
       } 
      }); 
return false; 
+0

試過這個,也沒有運氣。 –

+0

您是否嘗試過使用螢火蟲以查看服務器上發生了什麼?如果你在$ .ajax()方法之前放置一個警報,會得到什麼結果呢? –

+0

是的,我做到了,我在那裏得到了一個警報。我嘗試了IE瀏覽器,我發現如果我逐步完成ajax調用,它有時會工作。這真的沒有意義.... –