I have an IE9 Web browser control embedded in a larger WPF application. I'm attempting to call InvokeScript
and pass it a JSON string as a parameter:
webBrowser.InvokeScript("redrawPlot", new object[] { reDrawData });
The function redrawPlot uses the jquery method parseJSON
to parse this back into an object:
redrawPlot = function(dataObj) {
dataObj = $.parseJSON(dataObj);
...
}
When this runs in the WPF app I get the JavaScript error:
Invalid character
The contents of reDrawData (inspected in script debugger and in the WPF app) are:
"{\"plot0\":[{\"data\":[[1,1111.11111111111],[2,1111.11111111111],[3,1111.11111111111]],\"label\":\"A-TOP-6\"}],\"plot1\":[{\"data\":[[1,1111.11111111111],[2,1111.11111111111],[3,1111.11111111111]],\"label\":\"A-TOP-6\"}],\"plot2\":[{\"data\":[[1,1111.11111111111],[2,1111.11111111111],[3,1111.11111111111]],\"label\":\"A-TOP-6\"}],\"plot3\":[{\"data\":[[1,1111.11111111111],[2,1111.11111111111],[3,1111.11111111111]],\"label\":\"A-TOP-6\"}],\"plot4\":[{\"data\":[[1,1111.11111111111],[2,1111.11111111111],[3,1111.11111111111]],\"label\":\"A-TOP-6\"}]}"
When I run this in under IE9 developer tools passing that string directly I get no errors.
Am I not calling InvokeScript correctly?