Ajax 调用 Webmethod,跨域



我有两个Asp项目。在关闭项目 A 中的对话框时,我正在尝试使用 ajax 调用调用项目 B 中的静态 Web 方法。它不是调用Web方法,而是调用PageLoad。

知道我做错了什么吗?

网络方法

[WebMethod]
    public static string UpdateSession()
    {
        return "Test";
    }
 $(function () {
$('div#DialogDiv').on('dialogclose', function (event) {
    CloseDialog("http://localhost:1330/Application_Default.aspx/UpdateSession");
    return false;
  });
});
function CloseDialog(URL) {
jQuery.support.cors = true;
$.ajax({
    type: "GET",
    url: URL,
    data: '{}',
    contentType: "application/json; charset=utf-8",
    dataType: "jsonp",
    success: function (response) {
      alert("success");
       },
    failure: function (response) {
        alert("Failed to trying to find the method: " + URL );
    }
});
return false;

}

试试这个 用纯 JavaScript

function CloseDialog(URL) {
    var request = new XMLHttpRequest();
    request.open("GET", URL);
    request.onload = function() {
        if (request.status === 200) {
            alert(request.responseText);
            // to convert to JSON object-> JSON.parse(request.responseText);
      } else {
            alert("Failed to trying to find the method: " + URL );
      }
    };
    request.send();
    return false;
}

使用jQuery,我只会这样做,你不需要更多。它也应该适用于跨域。

function CloseDialog(URL) {
    $.ajax({
        url: URL,
        success: function (response) {
            jQuery.each(result.list, function(i, val) {
                // iterate the JSON object
                // val.node;
            });
        },
        failure: function (response) {
            alert("Failed to trying to find the method: " + URL );
        }
    });
    return false;
}

相关内容

  • 没有找到相关文章

最新更新