The return_value parameter contains
<textarea>{"id":43,"description":"","item_id":28,"callback":"addNewAttachment","filename":"foo.jpg",,"type":"posts","ext":"jpg","size":145}</textarea>
The following code removes the textarea tags in Firefox, Chrome, so you can access the content in arr [1]. In IE, an alert is called.
function addAttachment(returned_value) {
var re = new RegExp ("<textarea>(.+)</textarea>");
var arr = re.exec(returned_value);
if(arr != null && arr.length > 1) {
var json = eval('(' + arr[1] +')');
} else {
alert("Failure");
}
window[json.callback](json);
}
return_value comes from an ajax call. I am using jQuery.
TEST
This also does not work:
var re = new RegExp (/<textarea>(.+)<\/textarea>/);
Decision
The problem was that IE was getting textarea String in upper case and firefox in lower case.
The following regular expression solves it.
var re = new RegExp ('<textarea>(.+)</textarea)>','i');
source
share