撇号在输入字段中截断值

时间:2013-03-20 17:24:58

标签: java javascript jquery html

我在页面上有一个输入框,通过ajax调用重新加载(内容刷新)。问题是当输入框中有单引号时,剩余的值被截断,我该如何解决这个问题呢?

myVal = <-- its coming dynamically from db and when it contains values like "It's me", next time page reloads It just show "It" in input box
$('#myInput').val(myVal);
//after setting value and doing some other things, this content is reloaded

这是java(服务器端代码)

<input id="myInput"  value="<c:if test='${deamer!=null}">${deamer.name}, ${deamer.code}</c:if>' />

当服务器端的值中有[']时代码失败....

2 个答案:

答案 0 :(得分:2)

您遇到了转义字符串的问题。这一点很重要,因为对字符串转义的不当处理可能导致可能暴露于XSS和注入攻击。

由于您没有提供任何代码,也没有指定您在服务器端使用哪种语言在脚本上插入DB值,因此您无法获得更多帮助。我建议不要像这样插入原始数据,并使用某种形式的中介,例如JSON形式的服务器响应,可以很容易地通过javascript使用。

答案 1 :(得分:0)

我无法重现这个问题:

$(document).ready(function() {
   myVal = "It's me"
   $('#myInput').val(myVal);
});

输入中的文字就是我。

DEMO