gpt4 book ai didi

javascript - 想限制韩文和中文

转载 作者:太空狗 更新时间:2023-10-29 13:52:51 25 4
gpt4 key购买 nike

我需要根据lang限制输入框内容。输入。

例如:-

如果输入韩文字符的字符串,则允许的字符数为 8。如果输入的是汉字字符串,则允许输入的字符数为 5。如果是英文,则允许 12 个字符。

我的代码适用于 IE、Firefox 和 Chrome 中的英文字符。但是,对于韩语和中文字符,此代码无法正常工作。即使我增加了有效长度,我的代码也总是将字符串的长度减少到 2。请尽快提出一些解决方案。

我正在粘贴我的代码以供检查。

<!DOCTYPE html>
<html>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
document.onkeydown=function() {


var text = $('#lang').val();
var hangul = new RegExp("[\u1100-\u11FF|\u3130-\u318F|\uA960-\uA97F|\uAC00-\uD7AF|\uD7B0-\uD7FF]");
var china = new RegExp("[\u4E00-\u9FFF|\u2FF0-\u2FFF|\u31C0-\u31EF|\u3200-\u9FBF|\uF900-\uFAFF]");

// alert(hangul.test(text));
if(hangul.test(text))
{
limit = 8;
//console.log("korean");
limitCharacters('lang', limit , text);

}else if(china.test(text))
{
limit = 5;
//console.log("china");
limitCharacters('lang', limit , text);

}else {
limit = 11;
limitCharacters('lang', limit , text);

}
};

function limitCharacters(textid, limit, text)
{
//alert('here in limit funt.');
var textlength = text.length;
//alert(textlength);
if(textlength > limit )
{
$('#'+textid).val(text.substr(0,limit));
return false;
}else {

$('#'+textid).val(text);
$('#txt').html(text);
return true;
}

}



</script>
<body>
<input type="text" id="lang" />

</body>
</html>

最佳答案

我解决了这个问题,现在它对我来说工作正常。据我了解,IE 不支持子字符串。

<html>
<title> test</title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="http://css-browser-selector.googlecode.com/git/css_browser_selector.js"></script>
<script src="./beta.fix.js"></script>
<script>
var keyFix = new beta.fix('lang');

jQuery(document).ready( function($) {
jQuery('#lang').bind('keyup', checklang);

});

function checklang() {
var textid = jQuery(this).attr("id");
var text = jQuery(this).val();
var hangul = new RegExp("[\u1100-\u11FF|\u3130-\u318F|\uA960-\uA97F|\uAC00-\uD7AF|\uD7B0-\uD7FF]");
var china = new RegExp("[\u4E00-\u9FFF|\u2FF0-\u2FFF|\u31C0-\u31EF|\u3200-\u9FBF|\uF900-\uFAFF]");

// alert(hangul.test(text));
if(china.test(text))
{
limit = 5;
console.log("chiness");
}else if(hangul.test(text))
{
limit = 8;
console.log("korean");
}else {
limit = 11;
console.log("english");
}
jQuery('#'+textid).attr("maxlength", limit);
};
</script>
<body>
<input type="text" id="lang" size="100" />

</body>
</html>

关于javascript - 想限制韩文和中文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19921724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com