js+正则+单双引号问题

时间:2023-03-10 04:46:08
js+正则+单双引号问题

在处理用js动态添加表格时,表格中有正则表达式,其单双引号问题导致的添加表格不成功,和正则失效问题

<script type="text/javascript">

var html='<tr>' 
  +'<td align="center"><input type="text"  name="username" class="text_field"  MaxLength="50" onkeyup="this.value=this.value.replace(/\./g, '·')"   onafterpaste="this.value=this.value.replace(/\./g, '·')" /></td>'
  +'</tr>';
$("#tbl").append(html);
</script>
上面的这个语句在加入正则后,导致新加入行时,报错,错误信息如:无效字符一类
在尝试过各种单双引号修改后,发现,并没有达到预期的效果,最后用ASCII码和转义字符解决了,针对文中内容,有三个点需要知道
1.&quot;(双引号)
2.'(单引号)
3.\\ 代表一个反斜线字符''\',其ASCII码是 092
最后解决如下:注意红色部分为修改内容
var html='<tr>' 
+'<td align="center"><input type="text"  name="personname" class="text_field"  MaxLength="50" onkeyup="this.value=this.value.replace(/\\./g, '·')"   onafterpaste="this.value=this.value.replace(/\\./g, '·')" /></td>'
+'</tr>';