本例中敏感词ciku.txt放在C盘根目录下,采用的ActiveXObject插件获取本地文件内容。使用此插件不需网上下插件,直接用如下js代码即可。

浏览器需修改interner安全选项的级别,启用ActiveX才能获取到代码中的ActiveXObject插件。如下图所示:
js代码实现如下:
<script type="text/javascript">
// -------------- 全局变量,用来判断文本域中是否包含脏词,默认为false,即不包含脏词-------
var isDirty = false;
//使用ActiveX读取本地文件获取dirtyword词库
function readFile(){
//var ForReading = 1;
var fso = new ActiveXObject("Scripting.FileSystemObject");
openF = fso.OpenTextFile("c:\\ciku.txt", 1);
var cikuStr= openF.ReadAll();
return cikuStr;
}
/*
* 提交表单的主方法
* 在提交表单的时候对内容进行过滤并在文本域显示过滤后的内容
*/
function submitForm1() {
var messageValue=document.getElementById("message").value;
var cikuStr=readFile();
var cikuArr= new Array(); //定义数组,存储敏感词
cikuArr=cikuStr.split(" "); //敏感字符分割
for (var i=0;i<cikuArr.length;i++){
var flag=cikuArr[i];
if(messageValue.indexOf(flag)>=0){ //查找文本域中是否包含敏感字符,是则替换
filterWord(messageValue);
var ifs=confirm("你的留言中含有不恰当的词语,系统已自动为你修改,是否继续提交?");
break;
}else{ //无敏感字符,直接提交表单
document.getElementById("message_board").submit();
break;
}
}
if(ifs){ //用户点击确定,则提交表单
document.getElementById("message_board").submit();
}
}
/*
* 对传进来的messageValue过滤并返回新内容
*/
function filterWord(messageValue){
// 根据文本域的id获取文本域对象内容
var cikuStr=readFile();
var cikuArr= new Array(); //定义数组,存储敏感词
cikuArr=cikuStr.split(" "); //敏感字符分割到数组内
for (var i=0;i<cikuArr.length;i++){
messageValue=filterOneWord(messageValue,cikuArr[i]);//filterOneWord函数每次替换一个字符,需循环调用
}
document.getElementById("message").value=messageValue; //将替换后的内容显示到文本域中
}
/*
* 这个函数用来过滤单个词语, 如果messageValue中含有oneDirtyWord, 则用"**"替换这个oneDirtyWord
* messageValue --- 要过滤的语句
*/
function filterOneWord(messageValue,oneDirtyWord){
var str=messageValue.replace(new RegExp(oneDirtyWord,'g'),"**");
return str;
}
</script>
表单部分代码:
<body>
<form name="message_board" id="message_board" action="aaa.html">
<textarea name="message" id="message" cols="50" rows="10">
"This is you post messsage"
——phpdream
</textarea><br/>
<input type="button" value="提交留言" id="submitMessage" onclick="submitForm1()"/>
</form>
</body>
# js实现表单提交
# js
# activexobject
# AngularJS表单提交实例详解
# js表单提交和submit提交的区别实例分析
# 符合标准的js表单提交的代码
# JavaScript使用ActiveXObject访问Access和SQL Server数据库
# JavaScript中使用ActiveXObject操作本地文件夹的方法
# js之ActiveX控件使用说明 new ActiveXObject()
# 原生js ActiveXObject获取execl里面的值
# js借助ActiveXObject实现创建文件
# javascript下用ActiveXObject控件替换word书签
# 将内容导出到word后打印
# 表单
# 放在
# 为你
# 并在
# 中含有
# 所示
# 不需
# 如下图
# 则用
# 不恰当
# 默认为
# 即不
# 本例
# 全局变量
# 盘根
# 目录下
# 网上
# cikuStr
# var
# false
相关文章:
如何获取开源自助建站系统免费下载链接?
如何通过虚拟主机快速搭建个人网站?
临沂网站制作企业,临沂第三中学官方网站?
Thinkphp 中 distinct 的用法解析
建站主机选哪家性价比最高?
PHP 500报错的快速解决方法
网站制作网站,深圳做网站哪家比较好?
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
高防服务器租用首荐平台,企业级优惠套餐快速部署
完全自定义免费建站平台:主题模板在线生成一站式服务
网站制作价目表怎么做,珍爱网婚介费用多少?
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
如何批量查询域名的建站时间记录?
建站上传速度慢?如何优化加速网站加载效率?
建站之星收费标准详解:套餐费用及年费价格表一览
如何快速启动建站代理加盟业务?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
javascript基本数据类型及类型检测常用方法小结
建站主机默认首页配置指南:核心功能与访问路径优化
建站主机服务器选型指南与性能优化方案解析
小程序网站制作需要准备什么资料,如何制作小程序?
如何在腾讯云服务器快速搭建个人网站?
如何在阿里云香港服务器快速搭建网站?
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
如何用y主机助手快速搭建网站?
建站org新手必看:2024最新搭建流程与模板选择技巧
建站之星下载版如何获取与安装?
建站为何优先选择香港服务器?
网站制作说明怎么写,简述网页设计的流程并说明原因?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
清除minerd进程的简单方法
,在苏州找工作,上哪个网站比较好?
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
,网站推广常用方法?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?
如何快速生成可下载的建站源码工具?
建站之星如何实现PC+手机+微信网站五合一建站?
建站之星免费版是否永久可用?
高防服务器租用如何选择配置与防御等级?
已有域名和空间如何搭建网站?
小建面朝正北,A点实际方位是否存在偏差?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
网站app免费制作软件,能免费看各大网站视频的手机app?
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?
再谈Python中的字符串与字符编码(推荐)
如何在腾讯云服务器上快速搭建个人网站?
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
图册素材网站设计制作软件,图册的导出方式有几种?
*请认真填写需求信息,我们会在24小时内与您取得联系。