Jquery Ajax调用启用WCF ajax的Web服务不能在Firefox上运行

时间:2011-08-05 12:54:23

标签: wcf jquery jquery-widgets

我创建了一个名为“Service1.svc”的启用WCF ajax的Web服务   “我必须使用Jquery在另一个应用程序中调用此服务。”   我在其中创建了方法:

    [OperationContract]             
    public string GetMarkup()
    {   
       string data = "<div>My HTML markup text here</div>";
       return data;
    }

现在我在第二个应用程序的html页面中创建了jquery脚本:

var markup = "";
$.ajax({
    type: "POST",
    url: "http://localhost:1676/MyWCFService.svc/GetMarkup",
    contentType: "application/json",
    data: "{}",
    dataType: "json",
    success: callback,        
    error: function (textStatus) {
        alert("ERROR");
    }
});
function callback(result) {
    alert("Inside Callback");
    markup = result.d;
    $("#divMyMarkup").html(markup);
    alert(markup);
}
   

现在,我的问题是,每当我在IE中执行此页面时,它的工作正常。    但在Firefox中它不起作用。它给出了定义的警报错误消息 上面的ajax调用error: function (textStatus) {alert("ERROR");}

我使用$ .get(),$(“#divMyMarkup”)。load(serviceUrl,callback)尝试了这个功能。 我也通过将数据类型更改为json,jsonp,html来尝试此操作。 我仍然没有得到确切的解决方案。

这里有专家吗?

1 个答案:

答案 0 :(得分:3)

  

在另一个应用程序中使用Jquery

根据我的经验,IE不会尊重跨域策略,让您拨打电话,而不是参考...

找出答案的唯一方法是让你的html页面/ JQuery脚本在Firefox上从http://localhost:1676/ICallWcfServicesWithJQuery.html调用你的WCF服务。

可能的解决方案:

在多个浏览器上测试,添加1盎司杜松子酒,一罐滋补品,你会很好!