Jquery ajax 方法未定义

Jquery ajax Method is Undefined

我正在尝试使用 ajax 将数据传递到服务器。

由于 jquery 有 .ajaxStop 事件,当所有 ajax 方法完成时将调用该事件,我需要将常规 js 代码更改为 jquery因为它不适用于常规 js。

问题是每次我 运行 jquery 代码时,在浏览器控制台中我都会收到此错误。

'PassDataToServer' is not defined

C#代码

 [WebMethod]
    public static string PassDataToServer(String id, String clientData)
    {
        if (!dynamicInputs.ContainsKey(id))
            dynamicInputs.Add(id, clientData);
        else
            dynamicInputs[id] = clientData;

        return "complete";
    }

旧的常规 JS

function CallPassDataToServer(id, clientData) {
    PageMethods.PassDataToServer(id, clientData, onTransferComplete, onTransferFailed);
}

Jquery 失败方法

function PassInputDataToServer(id, inputData)
{
    alert(document.URL + "/" + PassDataToServer);
    $.ajax({
        type: "POST",
        url: document.URL + "/" + PassDataToServer,
        data: { "id": "'" + id + "'", "clientData": "'" + inputData + "'" },
        contentType: 'application/json; charset=utf-8',
        dataType: "text",
        success: function (result) { transferStatus.push(result); },
        error: function (result) { transferStatus.push("failed"); },
        complete: function (result) { transfersCompleted++; }       
    });
}

您需要指定调用的方法为字符串

function PassInputDataToServer(id, inputData)
{
    alert(document.URL + "/" + "PassDataToServer"); // <----
    $.ajax({
        type: "POST",
        url: document.URL + "/" + "PassDataToServer",   // <----
        data: { "id":  id, "clientData": inputData},
        contentType: 'application/json; charset=utf-8',
        dataType: "json",
        success: function (result) { transferStatus.push(result); },
        error: function (result) { transferStatus.push("failed"); },
        complete: function (result) { transfersCompleted++; }       
    });
}