我其中有一個文本框,當其含量的變化,將tricker控制這個javascript函數:jQuery的阿賈克斯200 OK JSON.ParseError
page
參數document.URL
作爲控制不附帶任何.asxc頁和fieldValue
是文本框的值。
function UpdateFieldsOnListSelection(page, fieldValue) {
$.ajax({
type: "POST",
url: page + "/IsSelectedListPictureLibrary",
data: { "libraryInfo": fieldValue },
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
alert("Success!");
},
error: function (jqXHR, textStatus, errorThrown) {
alert("jqXHR: " + jqXHR.status + "\ntextStatus: " + textStatus + "\nerrorThrown: " + errorThrown);
}
});
};
它不斷拋出這個錯誤:
jqXHR: 200
textStatus: parsererror
errorThrown: SyntaxError: JSON.parse: unexpected character
代碼爲IsSelectedListPictureLibrary
:
[WebMethod]
public static bool IsSelectedListPictureLibrary(string libraryInfo)
{
if (string.IsNullOrEmpty(libraryInfo)) return false;
var common = new Utility();
var storedLibraryInfo = common.GetStoredLibraryInfo(libraryInfo);
if (storedLibraryInfo == null) return false;
var web = SPContext.Current.Site.OpenWeb(storedLibraryInfo.WebId);
var spList = web.Lists[storedLibraryInfo.LibraryId];
if (spList.BaseTemplate == SPListTemplateType.PictureLibrary)
{
web.Dispose();
return true;
}
web.Dispose();
return false;
}
我在阿賈克斯試圖改變json
到jsonp
,但同樣的錯誤發生。
我試過改變data
的格式。
任何想法?
響應是什麼樣的? –
嘗試從Ajax參數中移除'contentType'和'dataType'並讓它們自動識別 – Catalin
@RaraituL這有效。你可以請你的評論作爲答案,所以我可以作爲答案。 – diceler