input文本框中value值有双引号的赋值问题,同样适用于html元素属性含有双引号的情况

ApiPost团队 后端 前端 2019-09-25

 input文本框中value值有双引号,赋值后可能会导致布局错乱。如下

<input type="text" value="{"a":123}" />

产生原因:

浏览器将value的第一个双引号和值的第一个双引号当成了闭合。导致取到的value值不是 {"a":123} 而是 {

解决方案:

赋值前,将双引号"转为 &quot;  即可。

示例:

PHP转换方式:

<input type="text" value="<?php echo str_replace("\"","&quot;",'{"a":123}');?>" />

评论