I have created a WCF web service. I call this usinq jQuery 1.7.1
try {
$.ajax({
type: "GET",
url: '/_vti_bin/PROJ/WCF.svc/GetDetails',
contentType: "application/json; charset=utf-8",
data: myid,
success: function (msg) {
wcfServiceGetSucceeded(msg);
},
error: wcfServiceGetFailed
});
} catch (e) {
alert('error invoking service.get()' + e);
}
This is working on all browsers when the results size is small. When the result size is bigger IE8 crashes. Chrome and IE9 work fine. The body of the json returned is 51,856(not sure what the units are in fiddler). IE crashes completely. It hangs and nothing is displayed. The IE process needs to be killed.
I am presuming it is down to one of the following things:
- There is an limit to the amount of data that can be handled by IE8
- There is a problem with
$.ajax()
in IE8 - There is a timeout issue in IE8
Does anyone know what I can do to get it working? The only thing I can think of is splitting the request up and making multiple calls.
A small example of the returned content can be seen below:
"<ul>
<li><a href='#tabs-1'>Member<\/a><\/li><li><a href='#tabs-2'>Scheme<\/a><\/li>
<li><a href='#tabs-3'>Scheme Categories<\/a><\/li>
<li><a href='#tabs-4'>Correspondence<\/a><\/li>
<\/ul>"
The WCF service returns html and then this is added to the page using .html()
.
The only other thing it could be if that there are erros in the returned html that is causing an issue.
Update
Regarding the last point:
The only other thing it could be if that there are erros in the returned html that is causing an issue.
Using firefox I coppied out the generate source for the area. Run it through w3 validator and except for a custom properity I added to the tr tag it validates fine.
Update
I have tried changing this to a POST but no joy. The authenication of the WCF service seems to be a bit wonky.
Update
I can also create the issue on IE7.