在将参数发送到javascript函数时替换双引号

时间:2014-08-18 07:04:27

标签: javascript jquery html

这是JSFiddle:

http://jsfiddle.net/5kdek3vn/

我有按钮如下:

<button class="buttoncss" title="Modify This Artifact File" onclick="setFileDescriptionForUpdate('!@#$%^&amp;*()_+-=~`{}|[]\:" ;'&lt;&gt;?,.="" ','state.dat','167','1','c:\\pp_artifactsuploadedfiles\evalid_318\state.dat');">Modify</button>

在这个点击中我正在调用setFileDescriptionForUpdate函数,其第一个参数是字符串,如下所示:

!@#$%^&*()_+-=~`{}|[]\:";'<>?,./

当“涉及字符串时会产生问题。

我可以做些什么改变来避免这种情况?

请帮帮我。

2 个答案:

答案 0 :(得分:2)

如果内嵌,则需要

HTML转义

如果你必须在html中使用内联javascript,那么你必须逃避它

& becomes &amp;
< becomes &lt;
> becomes &gt;

在属性值中,您还必须转义引号字符[spec]:

" becomes &quot;
' becomes &#39;

答案 1 :(得分:1)

使用以下代码: -

var user = "Hi \" User";
var test = user.replace("\"", "");
document.body.innerHTML = test;