日期:2014-05-16 浏览次数:20429 次
?
在web应用中,经常有要求在一个input框中输入多个值,各个值之间使用英文输入法状态下的逗号隔开,
但是有时候也会误输入中文状态下的逗号,此时需要有一个方法来判断输入的值中是否有中文逗号。
?
js 方法如下:
/**
* 判断 str 字符串中是否含有字符串 subStr
* @param {} str 原字符串
* @param {} subStr 要查找的字符串
* @param {} isIgnoreCase 是否忽略大小写
* @return {Boolean}
*/
function contains(str, subStr, isIgnoreCase) {
if (isIgnoreCase) {
// 忽略大小写
str = str.toLowerCase();
subStr = subStr.toLowerCase();
}
var startChar = subStr.substring(0,1);
var strLen = subStr.length;
for (var j=0; j<str.length-strLen+1; j++) {
if (str.charAt(j) == startChar) {
/* 如果匹配起始字符,开始查找 */
if (str.substring(j, j+strLen) == subStr) {
/*如果从j开始的字符与 str 匹配 */
return true;
}
}
}
return false;
}
?
?
使用方法:
?
<input type="text" id="num" size="30" />
<input type="button" id="btn" value="click me" />
$(document).ready(function(){
$("#btn").click(function(){
var num = $("#num").val();
if ("" != num){
if (contains(num, ",", true)){
alert("含有中文逗号.");
}
}
});
});
?