'
"
)--
>
<
&
\
/.
特殊字符主要有这几部分 出现这个的时候总是被 安全管理的同事给反馈 要求处理····
在textarea里面输入或者粘贴过来的 提交的时候能否操作~
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>replace</title>
</head>
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
console.log("请大神帮忙");
})
</script>
<body>
<div>
<textarea id="name"></textarea>
<input type="button" value="提交" id="commit" >
</div>
</body>
13 个解决方案
#1
服务器端也要验证过。。客户端的js验证是可以绕过的。。
正则判断下内容
不过提交这种字符串无所谓吧。。
正则判断下内容
<script type="text/javascript">
function checkData() {
var t = document.getElementById('name');
if (/['")-><&\\\/\.]/.test(t.value)) {
alert('包含特殊字符,不允许提交!');
}
}
</script>
<div>
<textarea id="name"></textarea>
<input type="button" value="提交" id="commit" onclick="checkData()" >
</div>
不过提交这种字符串无所谓吧。。
#2
你好 您回答的 很好 不过 这边的要求是 比如:textarta里面 是从其他处赋值过来的一段 字符串 : 这是一本非常好的书 <javascript高级篇>,\n
#3
刚没写完 就提交了 补写:
提交的时候 是需要把 <>这些符号带上的 比如一本书的名字 必须得用到那些字符 可是 到了 安全同事那块 就会有拦截·····
#4
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
或者给textarea增加onblur事件执行checkData事件也行
#5
那事你同事的事了,不允许提交这些字符,你又需要提交这些字符不是矛盾了
将<>替换为对应的实体字符<和>后在提交
将<>替换为对应的实体字符<和>后在提交
#6
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
嗯 提示是为了让他们更改掉对吧 , 可是提交的这个内容所包含的特殊字体是需要提交上去的 怎么进行转义一下 才能让 安全的同事那块 通过···· 不提示拦截··
#7
那事你同事的事了,不允许提交这些字符,你又需要提交这些字符不是矛盾了
将<>替换为对应的实体字符<和>后在提交
对 我当时想的就是 将那些特殊字符 怎么才能用一个方法替换成对应的 比如:<> <和>
#8
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
嗯 提示是为了让他们更改掉对吧 , 可是提交的这个内容所包含的特殊字体是需要提交上去的 怎么进行转义一下 才能让 安全的同事那块 通过···· 不提示拦截··
替换为实体也不行。。&就直接干掉多有实体内容了。。至少要放过&这个字符,然后替换为实体
' '
" "
< <
> >
其他的实体不常用,不知道什么。。
#9
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
嗯 提示是为了让他们更改掉对吧 , 可是提交的这个内容所包含的特殊字体是需要提交上去的 怎么进行转义一下 才能让 安全的同事那块 通过···· 不提示拦截··
替换为实体也不行。。&就直接干掉多有实体内容了。。至少要放过&这个字符,然后替换为实体
' '
" "
< <
> >
其他的实体不常用,不知道什么。。
en 有些事不怎么常用 到时也会用到 &这个基本上没怎么用到过 可以考虑其他方法 单独搞一下 能否把常用的这些 写个公用的方法 把内容当参数
#10
function checkData(v) {
var entry = { "'": "'", '"': '"', '<': '<', '>': '>' };
v = v.replace(/(['")-><&\\\/\.])/g, function ($0) { return entry[$0] || $0; });
return v;
}
var v = checkData('<书名啊>\'"');
document.write(v)
#11
function checkData(v) {
var entry = { "'": "'", '"': '"', '<': '<', '>': '>' };
v = v.replace(/(['")-><&\\\/\.])/g, function ($0) { return entry[$0] || $0; });
return v;
}
var v = checkData('<书名啊>\'"');
document.write(v)
谢谢你 大神··· 先这么着吧
#12
<script type="text/javascript">
for(var i=0;i<10;i++){
console.log("测试"+i)
}
</script>
for(var i=0;i<10;i++){
console.log("测试"+i)
}
</script>
#13
#1
服务器端也要验证过。。客户端的js验证是可以绕过的。。
正则判断下内容
不过提交这种字符串无所谓吧。。
正则判断下内容
<script type="text/javascript">
function checkData() {
var t = document.getElementById('name');
if (/['")-><&\\\/\.]/.test(t.value)) {
alert('包含特殊字符,不允许提交!');
}
}
</script>
<div>
<textarea id="name"></textarea>
<input type="button" value="提交" id="commit" onclick="checkData()" >
</div>
不过提交这种字符串无所谓吧。。
#2
服务器端也要验证过。。客户端的js验证是可以绕过的。。
正则判断下内容<script type="text/javascript">
function checkData() {
var t = document.getElementById('name');
if (/['")-><&\\\/\.]/.test(t.value)) {
alert('包含特殊字符,不允许提交!');
}
}
</script>
<div>
<textarea id="name"></textarea>
<input type="button" value="提交" id="commit" onclick="checkData()" >
</div>
不过提交这种字符串无所谓吧。。
你好 您回答的 很好 不过 这边的要求是 比如:textarta里面 是从其他处赋值过来的一段 字符串 : 这是一本非常好的书 <javascript高级篇>,\n
#3
服务器端也要验证过。。客户端的js验证是可以绕过的。。
正则判断下内容<script type="text/javascript">
function checkData() {
var t = document.getElementById('name');
if (/['")-><&\\\/\.]/.test(t.value)) {
alert('包含特殊字符,不允许提交!');
}
}
</script>
<div>
<textarea id="name"></textarea>
<input type="button" value="提交" id="commit" onclick="checkData()" >
</div>
不过提交这种字符串无所谓吧。。
你好 您回答的 很好 不过 这边的要求是 比如:textarta里面 是从其他处赋值过来的一段 字符串 : 这是一本非常好的书 <javascript高级篇>,\n
刚没写完 就提交了 补写:
提交的时候 是需要把 <>这些符号带上的 比如一本书的名字 必须得用到那些字符 可是 到了 安全同事那块 就会有拦截·····
#4
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
或者给textarea增加onblur事件执行checkData事件也行
#5
那事你同事的事了,不允许提交这些字符,你又需要提交这些字符不是矛盾了
将<>替换为对应的实体字符<和>后在提交
将<>替换为对应的实体字符<和>后在提交
#6
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
嗯 提示是为了让他们更改掉对吧 , 可是提交的这个内容所包含的特殊字体是需要提交上去的 怎么进行转义一下 才能让 安全的同事那块 通过···· 不提示拦截··
#7
那事你同事的事了,不允许提交这些字符,你又需要提交这些字符不是矛盾了
将<>替换为对应的实体字符<和>后在提交
对 我当时想的就是 将那些特殊字符 怎么才能用一个方法替换成对应的 比如:<> <和>
#8
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
嗯 提示是为了让他们更改掉对吧 , 可是提交的这个内容所包含的特殊字体是需要提交上去的 怎么进行转义一下 才能让 安全的同事那块 通过···· 不提示拦截··
替换为实体也不行。。&就直接干掉多有实体内容了。。至少要放过&这个字符,然后替换为实体
' '
" "
< <
> >
其他的实体不常用,不知道什么。。
#9
你总要提交吧。。提交的时候提示就行了。。
或者给textarea增加onblur事件执行checkData事件也行
嗯 提示是为了让他们更改掉对吧 , 可是提交的这个内容所包含的特殊字体是需要提交上去的 怎么进行转义一下 才能让 安全的同事那块 通过···· 不提示拦截··
替换为实体也不行。。&就直接干掉多有实体内容了。。至少要放过&这个字符,然后替换为实体
' '
" "
< <
> >
其他的实体不常用,不知道什么。。
en 有些事不怎么常用 到时也会用到 &这个基本上没怎么用到过 可以考虑其他方法 单独搞一下 能否把常用的这些 写个公用的方法 把内容当参数
#10
function checkData(v) {
var entry = { "'": "'", '"': '"', '<': '<', '>': '>' };
v = v.replace(/(['")-><&\\\/\.])/g, function ($0) { return entry[$0] || $0; });
return v;
}
var v = checkData('<书名啊>\'"');
document.write(v)
#11
function checkData(v) {
var entry = { "'": "'", '"': '"', '<': '<', '>': '>' };
v = v.replace(/(['")-><&\\\/\.])/g, function ($0) { return entry[$0] || $0; });
return v;
}
var v = checkData('<书名啊>\'"');
document.write(v)
谢谢你 大神··· 先这么着吧
#12
<script type="text/javascript">
for(var i=0;i<10;i++){
console.log("测试"+i)
}
</script>
for(var i=0;i<10;i++){
console.log("测试"+i)
}
</script>