Мне нужно вызвать файл обработчика (ashx) из jQuery, чтобы получить некоторые данные во время выполнения. Моя функция JQuery выглядит следующим образом:Вызов обработчика из jQuery не работает
var pID = 3;
var tID = 6;
$("#Button1").click(function() {
var urlToHandler = "Controller/TestHandler.ashx";
$.ajax({
type: "POST",
url: urlToHandler,
data: "{'pID':'" + pID + "', 'tID':'" + tID + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
alert(msg);
}
});
});
Мой код обработчика:
<%@ WebHandler Language="C#" Class="TestHandler" %>
using System;
using System.Web;
public class TestHandler : IHttpHandler
{
public void ProcessRequest (HttpContext context)
{
String pID = context.Request.Params["pID"];
String tID = context.Request.Params["tID"];
context.Response.ContentType = "text/plain";
context.Response.Write(pID + " " + tID);
}
public bool IsReusable
{
get {
return false;
}
}
}
Проблема является выполнение кода не доходит до кода обработчика. Я могу вызывать файлы других веб-форм (aspx) из одной и той же функции jQuery из того же каталога, где находится файл обработчика. Таким образом, это не проблема.
Я новичок в этой концепции файла обработчика. Я много искал Google, но не смог найти ничего плохого в моем коде.
Что говорит Скрипач? (Или firebug?) – aquinas
У него нет никаких ошибок. –
Итак, он возвращает 200, успех? – aquinas