Я создал приложение .NET 2.0 с использованием jQuery.
Однако, когда я развернул его на моем сервере, на котором не установлен .NET 3.5, он не работает.
Я не получаю ошибок и понятия не имею, как его отладить.
Я использую jquery-1.3.2.min.js.
Отлично работает в моей тестовой среде и на моем другом сервере с установленным 3.5.
После загрузки на рабочий сервер с 2.0 каждый обратный вызов в ASP.NET завершается ошибкой.
<script type="text/javascript">
$(document).ready(function() {
var item = $("[id$='txtItemName']");
var category = $("[id$='ddlCategories']");
var record = $("[id$='txtRecordID']");
$("#btnSave").click(function() {
if (item.val().length == 0) {
alert("Please enter item name first.");
return false;
}
if (category.val().length == 0) {
alert("Please select a category.");
return false;
}
var paramArray = ["testText", escape(item.val()), "categoryID", category.val(), "recordID", 1];
PageMethod("SaveMyData", paramArray, AjaxSucceeded, AjaxFailed);
});
});
function AjaxSucceeded (result)
{
alert("lykkedes" + result);
}
function AjaxFailed(result)
{
alert("failed" + result);
}
function PageMethod(fn, paramArray, successFn, errorFn) {
var pagePath = window.location.pathname;
//Create list of parameters in the form:
//{"paramName1":"paramValue1","paramName2":"paramValue2"}
var paramList = '';
if (paramArray.length > 0) {
for (var i = 0; i < paramArray.length; i += 2) {
if (paramList.length > 0) paramList += ',';
paramList += '"' + paramArray[i] + '":"' + paramArray[i + 1] + '"';
}
}
paramList = '{' + paramList + '}';
//Call the page method
$.ajax({
type: "POST",
url: "DataProcessor.aspx?" + fn + "=1",
contentType: "application/json; charset=utf-8",
data: paramList,
dataType: "json",
success: successFn,
error: errorFn
})
;}
</script>
И процедура DataProcessor выглядит следующим образом:
public void SaveMyData()
{
System.IO.StreamReader sr = new System.IO.StreamReader(Request.InputStream);
string line = "";
line = sr.ReadToEnd();
JObject jo = JObject.Parse(line);
string temp = (string)jo["recordID"];
Response.Write(temp);
}
Я ввожу AjaxFailed (результат), когда я пытаюсь это сделать ...
Любая помощь и предложения очень ценятся ...