我从服务器得到一个包含双引号的值。我需要用值填充一个输入标记。
我尝试过使用转义(MyVariable),但这会将空格转换为%20,等等。我想我可以编写一个if/then语句,说明如果字段中有双引号,则使用value='',但是如果字段中同时有双引号和单引号,我该怎么办?
发布于 2011-03-22 04:54:06
input.value = val.replace(/"/g, '"');发布于 2011-03-22 04:55:10
将双引号替换为"。
发布于 2011-03-22 05:05:25
我从服务器得到一个包含双引号的值。
您将问题标记为"javascript“,因此我假设您是通过ajax加载此服务器值的。
如果包含您的值的变量已被赋值,则没有理由对任何内容进行编码。
下面是一个示例脚本,它接受一个已经分配的变量,并将其放入一个新的表单元素中。如您所见,form元素同时显示单引号和双引号是完全没有问题的。
<html>
<body>
<form id='myform'></form>
<script type='text/javascript'>
var myField = "James' answer is \"the best\"";
var i = document.createElement('input');
i.type = 'text';
i.name = 'testField';
i.value = myField;
document.getElementById('myform').appendChild(i);
</script>
</body>
</html>https://stackoverflow.com/questions/5383520
复制相似问题