为什么 UTF-8 字符在 jquery textcomplete 中不起作用?
Why do UTF-8 characters not work in jquery textcomplete?
我在我的网络应用程序中使用自动完成器 jquery-textcomplete。它适用于英文和俄文字母。但它不适用于某些特殊字母,例如 "˷".
代码:
$('.form-control').textcomplete([{
words: ['тоҷик', 'ҷаҳон', 'english'],
match: /(^|[^\wа-яёҷ])([\wа-яё]{2,})$/i,
search: function(term, callback) {
callback($.map(this.words, function(word) {
return word.indexOf(term) === 0 ? word : null;
}));
},
index: 2,
replace: function(word) {
return '' + word + ' ';
}
}]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.textcomplete/1.8.4/jquery.textcomplete.min.js"></script>
<textarea class="form-control"></textarea>
这里 'тоҷик'
和 'english'
两个词有效,但 'ҷаҳон'
无效。我该如何解决这个问题?
我需要以下字母才能工作:ғ,ӯ,қ,ҳ,ҷ,ӣ
和 а-я
。
已回答。
$('#textcomplete').textcomplete([{
words: ['тоҷик', 'ҷаҳон', 'english'],
match: /(^|\S*)([^\u0000-\u007f]{2,}|\w{2,})$/,
search: function(term, callback) {
callback($.map(this.words, function(word) {
return word.indexOf(term) === 0 ? word : null;
}));
},
index: 2,
replace: function(word) {
return word + ' ';
}
}]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.textcomplete/1.8.4/jquery.textcomplete.min.js"></script>
<textarea id="textcomplete"></textarea>
我在我的网络应用程序中使用自动完成器 jquery-textcomplete。它适用于英文和俄文字母。但它不适用于某些特殊字母,例如 "˷".
代码:
$('.form-control').textcomplete([{
words: ['тоҷик', 'ҷаҳон', 'english'],
match: /(^|[^\wа-яёҷ])([\wа-яё]{2,})$/i,
search: function(term, callback) {
callback($.map(this.words, function(word) {
return word.indexOf(term) === 0 ? word : null;
}));
},
index: 2,
replace: function(word) {
return '' + word + ' ';
}
}]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.textcomplete/1.8.4/jquery.textcomplete.min.js"></script>
<textarea class="form-control"></textarea>
这里 'тоҷик'
和 'english'
两个词有效,但 'ҷаҳон'
无效。我该如何解决这个问题?
我需要以下字母才能工作:ғ,ӯ,қ,ҳ,ҷ,ӣ
和 а-я
。
$('#textcomplete').textcomplete([{
words: ['тоҷик', 'ҷаҳон', 'english'],
match: /(^|\S*)([^\u0000-\u007f]{2,}|\w{2,})$/,
search: function(term, callback) {
callback($.map(this.words, function(word) {
return word.indexOf(term) === 0 ? word : null;
}));
},
index: 2,
replace: function(word) {
return word + ' ';
}
}]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.textcomplete/1.8.4/jquery.textcomplete.min.js"></script>
<textarea id="textcomplete"></textarea>