因为项目需要,所以选择了一种表单验证的插件,jquery.validate ,因为需要现实中问题是,所以我就引入了一个中文的消息提示的脚本,如果觉得这个脚本提示信息不够也可以扩充,可以采用两种方法:第一种:在需要验证的页面中,自定义显示消息,例如:
//定义中文消息
var cnmsg = {
required: "必选字段",
remote: "请修正该字段",
email: "请输入正确格式的电子邮件",
url: "请输入合法的网址",
date: "请输入合法的日期",
dateISO: "请输入合法的日期 (ISO).",
number: "请输入合法的数字",
digits: "只能输入整数",
creditcard: "请输入合法的信用卡号",
equalTo: "请再次输入相同的值",
accept: "请输入拥有合法后缀名的字符串",
maxlength: jQuery.format("请输入一个长度最多是 {0} 的字符串"),
minlength: jQuery.format("请输入一个长度最少是 {0} 的字符串"),
rangelength: jQuery.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"),
range: jQuery.format("请输入一个介于 {0} 和 {1} 之间的值"),
max: jQuery.format("请输入一个最大为 {0} 的值"),
min: jQuery.format("请输入一个最小为 {0} 的值")
};
jQuery.extend(jQuery.validator.messages, cnmsg);
第二种:下载validate 给我们提供好的js文件,这个js文件可以扩展,其实原理和第一种一样,都是替换掉了validate本身的消息提示,本以为这样就可以了看,但是试验后突然发现提示仍然是英文。通过查了一些资料发现网上有很多都是这样做了,就OK了,但是我的这样做了就不行,本来想放弃 直接采用第一种方法算了,但是觉得这样写在页面中太乱,而且也不可以被复用。所以 我就跟它较上劲了 ^_^,在网上查了一下 ,也没有发现什么太用价值的东西,突然想起来以前我在做其他页面 引入js的时候,也有一个是中文问题,我突然觉得问题应该大同小异,然后找到以前引入外部js的方式看了一下,发现多了一个 编码属性,于是我也 增加了一个charset属性,具体的编码值 可以根据js文件需要而定。如下:我使用了 UTF-8编码;
<script type="text/javascript" src="../jQuery/jquery-validate/localization/messages_cn.js" charset="UTF-8" ></script>
结果试验一下,一切OK,搞定收工!
不知道大家有没有遇到过类似的问题,总是我是在项目中遇到了两次引入外部js文件,中文显示问题,所以记录下来,仅供大家参考和共同学习。