Javascript: JSON对象第一个键多出空格(或者换行)的问题

如下图所示,本来是键 "type" ,弹出modal之后,变成 " type",多出一个空格,因此出错,怎么回事?如何处理?


https://img2.mukewang.com/5c8c961100017c9908000055.jpg


从chrome检查元素复制出来的html源码是:


<button type="button" onclick="confirmAjax(&quot;确定要修改本项吗?&quot;,'updateDictElem(51,{&quot;type&quot;:&quot;XJ&quot;,&quot;label&quot;:&quot;999&quot;,&quot;value&quot;:&quot;333&quot;,&quot;orders&quot;:&quot;22&quot;,&quot;remarks&quot;:&quot;&quot;})')">确定修改</button>

https://img2.mukewang.com/5c8c96130001781808000031.jpg


从chrome检查元素复制出来的html源码是("和type之间换行了):


<button class="button bMuddy sButton" onclick="updateDictElem(51,{" type":"xj","label":"999","value":"333","orders":"22","remarks":""});closemodal();"="">确认</button>


开满天机
浏览 1038回答 2
2回答

饮歌长啸

当然出错这是外层你用的双引号&nbsp;这是里层,你也用双引号&nbsp;导致他解析成了这里配成了一对;而这些字符串DOM解析成了无用字段导致你点击事件不能正常触发。解决办法1:外层用单引号onclick='code'>确认</button>解决办法2:转义onclick="updateDictElem(51,{\" type\":\"xj\",\"label\":\"999\",\"value\":\"333\",\"orders\":\"22\",\"remarks\":\"\"});closemodal();">确认</button>建议使用第一种

牛魔王的故事

我说一下我的思路,希望对你有所帮助!方式一把onclick里面的双引号变成单引号,例如像这样:onclick="updateDictElem(51,{'type':'xj'...);closemodal();" (外面单引号,里面双引号也是可以的,看你个人习惯)方式二把写在onclick中的那么多放在一个函数里面,就像这样:onclick="test()",test函数里面放你上面那些内容多好!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript