I've created a small AJAX library for our application. We send the response data back as JSON in responseText. So far so good.

Before we invoke the response handler, I'm putting the eval'ed responseText in the request object like so:

req.respText = eval('(' + req.responseText + ')');
This works in FF but breaks in IE 6. (*gasp*)

I finally got the Microsoft Script Editor yesterday, so I could play with the values and see what was going on. Kind of... I'm still in the dark. For some reason, it won't let me add a property to req.

Can anyone explain why/how it prevents me from doing so?

Conceivably I could add the eval'ed responseText to the response handler function, but that would break the API, and would require us to modify a bunch of existing functions.