script标签转义

前言

前端页面文本输入过程中输入标签
一般情况下是没有什么问题的,但是也有几种情况会出现问题

1.输入框的文本被取值然后以拼装或者innerHTML的形式插入到界面

这种情况script标签里的代码会执行,造成的后果未知(不过F12之后console面板本来就可以执行js,貌似防不住)
如果script里面是js代码,那么界面上就不会显示(面对真的要填写这个文本内容的,不做处理可能根本就不显示)

2.数据传到后端,在返回前端如果返回的方式不对,容易造成页面出现代码,或者干脆导致页面报错打不开

这种情况我只在页面使用framemarker语法时看见过
如果不注意根据情况使用?html ?js_string去转换
html代码部分不转换会使界面出现代码,js部分不转换会使页面报错严重的额能白屏

特定的地方使用对进行处理可以避免这些问题
var txt="";
txt=txt.replace(/alert('1')</script>"

将script标签中的<转换成<这也是大多数框架的处理方式
部分老式的jquery版的ui框架比较容易出现这个问题,该方法在easyui上测试表现正常,其他更多的地方待测

你可能感兴趣的:(script标签转义)