如果输入包含数组中的任何单词
if input contains any word in array
我有一个输入,我想知道我的数组中是否存在任何值。 举一个简单的例子,我的数组是
var _array = ["sun", "mon", "tue", "wed", "thu", "fri", "sat"];
例如,我已经想出了如果我只输入"sun"如何触发它,但我想知道"hhsun"或"sunee"是否也存在。
$('input').keyup(function() {
var _val = $(this).val();
$('p').text(_val);
var _array = ["sun", "mon", "tue", "wed", "thu", "fri", "sat"];
if (_array.indexOf(_val) != -1) {
$('span').text('it worked');
} else {
$('span').text(_array.indexOf(_val));
}
});
小提琴
检查 _array
元素是否是文本框文本的子字符串:
var _array = ["sun", "mon", "tue", "wed", "thu", "fri", "sat"];
for (var i = 0; i < _array.length; i++) {
if (_val.indexOf(_array[i]) != -1) {
$('span').text('it worked');
return;
}
}
$('span').text('nothing');
演示:http://jsfiddle.net/WLacb/3/
一个稍微晦涩的解决方案是正则表达式:
if (/sun|mon|tue|wed|thu|fri|sat/ig.test(_val)) {
$('span').text('it worked');
} else {
$('span').text('nothing');
}
演示:http://jsfiddle.net/WLacb/9/
一个简单的方法是使用内置的jquery.each命令遍历数组的每个元素,并检查它是否在文本框值中。
http://jsfiddle.net/WLacb/10/
$('span').text(-1);
$.each(_array, function(key, value) {
if (_val.indexOf(value) != -1) {
$('span').text('it worked');
}
});
相关文章:
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 创建一个数组数组,没有任何重复的Javascript
- 将带有多维数组的表单从Javascript提交到PHP
- 添加和删除隐藏字段数组中的值,而不提交表单
- 使用Web Html表单创建Javascript数组
- 如何在php中读取没有任何键的JSON数组
- 如何将JS数组添加到Meteor自动表单条目中
- 单击select'时将数组行回显到文本区域中;s选项
- JQuery:如何在每次单击时逐个显示段落标签数组
- 使用JavaScript获取数组中表单的所有控件
- 值中的任何匹配数组
- 如何确定$(this)是否在单击事件的数组中
- 我想遍历一个对象数组,我不想要任何重复项
- 将一个对象转换为一个单键对象数组(带下划线?)
- 如何在不使用jQuery的情况下设置数组以获取单选按钮值
- 你能提交一个带有文本输入数组的表单吗
- 比较数组中的连续元素不会返回任何结果(javascript)
- 将数组中的重复项转换为唯一项,而不删除Javascript中的任何项
- 使用 JQuery 从表单中获取 javascript 多维数组
- 当jQuery Chosen中未选择任何内容时,表单提交上的空数组