當我從jQuery使用ajax發佈到C#時,我遇到了無法解釋的行爲。
1)主頁面不是我在jQuery中請求的方法。
要解決這個問題,我只需在頁面加載中放入一個if,這樣如果特定項目在查詢字符串中,它將觸發一系列命令。它確實打擊瞭如果聲明並且完美地運行代碼。有一些方法可以在地圖上改變顏色。這些從來沒有發生過。我可以設置一個標籤,它會通過它,但標籤仍然未設置。
2)奇怪的是......我的頁面有一個刷新它的計時器。它刷新頁面,現在處理更改。
這裏是我打電話給我的方法在jQuery的方式:
function mycmethod(param)
{
//alert(precinct);
$.ajax({
url: "myPage.aspx/someMethod",
type: 'POST',
data: "params=" + param,
success: function iGotData(responseJSON) {
// alert("Worked");
},
error: function (xhr, status, errorThrown) {
console.log("Error: " + errorThrown);
console.log("Status: " + status);
console.log(xhr);
alert("Didnt work:" + errorThrown);
},
})
};
它最初設置爲異步:真但這並不有所作爲。
方法,它不是在加載調用是:
[WebMethod][ScriptMethod]
public Boolean someMethod(string param)
{
setFeatures();
GenerateMap();
return true;
}
我懷疑它的相關性,但我打電話超過鼠標懸停在某個特定元素的jQuery的電話。 jquery調用一個調用返回一些jSON的asmx web服務的函數。我在返回JSON後調用mycmethod
。
爲什麼我的UI元素沒有響應,直到頁面刷新。如果沒有,有沒有辦法像定時器那樣強制刷新?
不是關於答案:從不使用'async:false'。這很糟糕,不推薦使用。 – Regent 2014-09-26 20:46:08
我知道...只是想嘗試任何東西:( – logixologist 2014-09-26 20:46:53