Ⅰ 前端怎麼判斷漢字是什麼字母開頭的
去找Convert_Pinyin這個漢子轉拼音的插件,使用方法看文檔
轉為拼音後得到的拼音字元串用 str.splic(0,1)截取第一個字母就行了
Ⅱ 檢測input每次的輸入是否合法遇到漢字輸入就有問題
如下HTML代碼可以實現,只允許輸入漢字,測試一下試試吧:
姓名:<input type="text" id="uname" />
<input type="button" onclick="check();" value="提交" />
<script>
function check(){
if(!/^[\u4e00-\u9fa5]+$/gi.test(document.getElementById("uname").value))
alert("只能輸入漢字");
else
alert("提交成功");
}
</script>
Ⅲ input限制輸入漢字問題
正則匹配,在input輸入值是觸發change事件,然後用正則檢測input輸入框中的值,[a-zA-Z0-9]或者\w都可以
Ⅳ 怎麼使用js校驗輸入框還可以輸入多少個字,要區分漢字和非漢字
/**
計算指定輸入框中字元串的長度
@parameleInput指定的輸入框或輸入框的id,required
@parammaxLength期望的字元串最大長度,optional,未指定時,默認取輸入框的maxLength屬性,未指定maxLength屬性時,指定為100字元長度
@paramnativeCharSize,一個漢字的長度,optional,因資料庫編碼不同,漢字所佔用的長度也不同,比如UTF-8編碼中,漢字佔用3個字元的長度,而GBK編碼中漢字則是2個字元的長度。未制定時,默認按2個字元長度計算
@return返回計算結果
*/
functioncomputeLength(eleInput,maxLength,nativeCharSize){
varnativeCharRegexp=/[u4E00-u9FFF]/;
varstring,char,length=0;
varele=(typeofeleInput=='string')?document.getElementById(eleInput):eleInput;
if(maxLength==undefined){
maxLength=ele.maxLength||100;
}
if(nativeCharSize==undefined){
nativeCharSize=2;
}
string=(ele.value||'').split('');
for(vari=0,count=string.length;i<count;i++){
char=string[i];
if(nativeCharRegexp.test(char)){
length+=nativeCharSize;
}else{
length++;
}
}
returnlength;
}
functioncheckLength(target){
varmaxLength=100;//這是允許輸入的最大數
vartargetLength=computeLength(target,maxLength,2);//這個是已輸入的字元
varleftLength=maxLength-targetLength;
document.getElementById("size").innerHTML=leftLength;//這里的size就是需要變換數字地方的Id
}
Ⅳ js驗證不能輸入漢字怎麼解決
1、用正則表達式判斷,非常簡單,兩條代碼就可實現,具體如下:
Ⅵ js中如何判斷用戶輸入的是否是漢字請給出具體代碼,而且請先測試成功時再帖出。
<html>
<head>
<scriptlanguage="javascript"type="text/javascript">
functiononk(obj){
if(!(/[u4e00-u9fa5]+/).test(obj)){
alert("請輸入漢字");
txt=document.getElementById("inputId");
txt.value="";
txt.focus();
}
}
</script>
</head>
<body>
<inputtype="text"onBlur="onk(this.value)">
</body>
</html>
Ⅶ web前端:chrome瀏覽器input框輸入問題
那就不要這樣做嘛。你在下用一段紅色小字來提示
當前輸入長度超出限制1個字,無法提交
之類的嘛
這樣的話別人通過復制進來的字元串就可以在輸入框中任意增刪
Ⅷ javascript中如何判斷文本框輸入的是漢字或者是英文
用正則表達式來判斷是最好的方法:if(/[^\x00-\xff]/g.test(str))
alert("含有漢字");
else
alert("全是非漢字的字元");
Ⅸ 前端input,使用正則判斷,初始30位,每有一個漢字減少三位輸入
在我認知中這種涉及計算的用正則無法一次性實現,至少要經過一次計算得到最終需要的位數
你可以通過下面這個簡單的函數實現這個驗證
constreg=value=>newRegExp(`^.{${30-(value.match(/[u4E00-u9FFF]/g)||[]).length*3}}$`).test(value);
測試結果如下
reg('');//true不含漢字30位
reg('一二三四五1234567890');//true5個漢字15位
Ⅹ js驗證輸入值只能為漢字
可以使用js的test方法實現js驗證輸入值只能為漢字。
具體步驟如下:
需要准備的材料分別是:電腦、瀏覽器、ultraedit。
1、在ue編輯器中新建一個空白的html文件,js文件。