以下是我的html代码。
获取输入。<HTML>
<BODY>
<FORM METHOD=POST onSubmit="javascript:return(exa(this.form.model.value))">
<INPUT TYPE=TEXT NAME=MODEL VALUE="">
<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE="Next">
</FORM>
</BODY>
</HTML>
用户输入模型名称(具有零宽度特殊字符)时 -> PMUE4526AAAAAA
下面是删除非ASCII字符的Java脚本。但是,这对我不起作用。
function exa(myString)
{
alert("String: "+myString);alert("String_length: "+myString.length);
myString= myString.replace(/[^x20-x7e]/g,'');
alert("String: "+myString);alert("String_length: "+myString.length);
每当我试图显示我从HTML收到的值时,"​​PMUE4526AAAAAA"
都会显示。因此,我的Java脚本程序考虑"​"
(7个字符),而不是特殊字符。
请帮助我解决问题。
在替换中尝试使用此正则判断性:/([^ x00- x7f] |&amp;#[0-9] ;)/g