jquery - Create javascript object from doubleqoute text -


i have messy problem i'm stuck with. try use mvc model in javascript object (for later knockout binding).

what i'm in controller (object simplified showing problem):

    public actionresult projectserviceoverview()     {         var result = new              {                 text = "hello ""test"" test.."             }          return view(result);     } 

and in client code (aka java script):

$(function () {     var jsonmodel = '@html.raw(newtonsoft.json.jsonconvert.serializeobject(this.model))';     var mvcmodel = json.parse(jsonmodel);      [...] 

my problem @ runtime server side generated json (var jsonmodel) looks , invalid because of double quots.

{     "reason": "hello "test" test..." } 

i try find solution work without doing nasty replace ( " \") operation. there smarter way? in working code objects comes database mapped entity framework.

update 1

ok found out 'html.raw' call removed \" inside text nodes. think can handel this.

now i'm doing simple test like:

 $(function () {     var json = '{ "reason": "hello \"test\" test..."}';     var mvcmodel = json.parse(json);      debugger; 

and error because illegal signs!?

please :(

ok don't run json. i'm doing following.

action methode:

var serializer = new javascriptserializer(); viewbag.jsmodel = serializer.serialize(modelobject); 

jscript:

$(function () {     var mvcmodel = @(html.raw(viewbag.jsmodel)); 

this works me. if has better solution, happy hear.

greetings steffen


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -