jQuery - 在文本区域中查找文本
jQuery - find text in textarea
我想为 textarea 编写验证以防止键入一些单词,例如,如果您在 textarea 上键入 Viber,它将删除它然后提醒,我的问题是此代码仅在您首先键入 viber 时有效!如果您键入 ex:我喜欢 Viber,它不起作用,我想在 textarea 中到处找到 viber 并将其删除,第二个问题是我想对所有类型的小写和大写文本、VIBER、viber 执行此操作、Viber、ViBeR 等...我可以这样做吗?
$('textarea').keyup(function() {
var val = this.value;
var my = $(this).val();
if ( val.indexOf('viber') == 0 ) {
$(this).val($(this).val().split(my).join(""));
alert("viber not allowed");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<textarea></textarea>
$('textarea').keyup(function() {
var val = this.value.toLowerCase();
var my = $(this).val();
if ( val.indexOf('viber') != -1 ) {
$(this).val($(this).val().split(my).join(""));
alert("viber not allowed");
}
});
$('textarea').keyup(function() {
if ($(this).val().toLowerCase().indexOf('viber') != -1) {
$(this).val($(this).val().replace(/viber/i, ''));
alert('never say "Viber" again!');
}
});
并注意 String.indexOf
- 它是第一个匹配项的 returns 索引,如果没有找到任何内容,则为 -1。在您的情况下,您正在检查零 - 这是错误的,因为零意味着它在字符串的开头找到第一次出现。
我想为 textarea 编写验证以防止键入一些单词,例如,如果您在 textarea 上键入 Viber,它将删除它然后提醒,我的问题是此代码仅在您首先键入 viber 时有效!如果您键入 ex:我喜欢 Viber,它不起作用,我想在 textarea 中到处找到 viber 并将其删除,第二个问题是我想对所有类型的小写和大写文本、VIBER、viber 执行此操作、Viber、ViBeR 等...我可以这样做吗?
$('textarea').keyup(function() {
var val = this.value;
var my = $(this).val();
if ( val.indexOf('viber') == 0 ) {
$(this).val($(this).val().split(my).join(""));
alert("viber not allowed");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<textarea></textarea>
$('textarea').keyup(function() {
var val = this.value.toLowerCase();
var my = $(this).val();
if ( val.indexOf('viber') != -1 ) {
$(this).val($(this).val().split(my).join(""));
alert("viber not allowed");
}
});
$('textarea').keyup(function() {
if ($(this).val().toLowerCase().indexOf('viber') != -1) {
$(this).val($(this).val().replace(/viber/i, ''));
alert('never say "Viber" again!');
}
});
并注意 String.indexOf
- 它是第一个匹配项的 returns 索引,如果没有找到任何内容,则为 -1。在您的情况下,您正在检查零 - 这是错误的,因为零意味着它在字符串的开头找到第一次出现。