Javascript 从数组Jquery的大列表中搜索字符串中的某些单词
如何搜索与数组匹配的字符串中的每个单词 这是我的原型:Javascript 从数组Jquery的大列表中搜索字符串中的某些单词,javascript,jquery,Javascript,Jquery,如何搜索与数组匹配的字符串中的每个单词 这是我的原型: $("#latte").on("click", function() { $('#lattePool').load('dictionary.txt'); var text = $("#lattePool").text().toUpperCase(); var words = text.split("\n"); var dic
$("#latte").on("click", function() {
$('#lattePool').load('dictionary.txt');
var text = $("#lattePool").text().toUpperCase();
var words = text.split("\n");
var dictionary = new Array();
for(var i=0; i < words.length; i++) {
dictionary[i] = words[i];
};
$("#notes p").each(function(){
var nameFound = $.inArray($(this).text().trim().toUpperCase(), dictionary);
if (nameFound === -1){
} else {
alert($(this).text() + " found in array");
}
});
});
$(“#拿铁”)。在(“单击”,函数(){
$('#lattePool').load('dictionary.txt');
var text=$(“#lattePool”).text().toUpperCase();
var words=text.split(“\n”);
var dictionary=新数组();
for(var i=0;i
当用户单击#latte按钮时,它会将dictionary.txt文本加载到临时池调用#lattePool中,然后将其分解为单个单词,然后再分解为一个很长的数组
然后,wehn用户将内容粘贴到contenteditable div#notes中,它需要找到标记中的每个单词以及字典数组中的所有单词
目前它只适用于中的单个单词,而不是长字符串
有没有办法让它检查数组中a的每个单词
非常感谢~ 而不是$(“#notes p”)。每个都需要获得p
标记文本并用空格分隔,然后循环查找所有单词
试试这个:
$("#latte").on("click", function() {
$('#lattePool').load('dictionary.txt', function(){
var text = $("#lattePool").text().toUpperCase();
var words = text.split("\n");
var dictionary = new Array();
for(var i=0; i < words.length; i++) {
dictionary[i] = words[i];
};
var contentEditableTxt = $("#notes p").text();
var splitCntEditableTxt = contentEditableTxt.split(" ");
$.each(splitCntEditableTxt,function(key,val){
var nameFound = $.inArray(val.trim().toUpperCase(), dictionary);
if (nameFound === -1){
} else {
alert(val + " found in array");
}
});
});
});
$(“#拿铁”)。在(“单击”,函数(){
$('#lattePool').load('dictionary.txt',function(){
var text=$(“#lattePool”).text().toUpperCase();
var words=text.split(“\n”);
var dictionary=新数组();
for(var i=0;i
注意.load()
是。因此,将下面的代码.load
放入其回调函数中,如$('#lattePool').load('dictionary.txt',function(){//here})代码>谢谢你的建议伙计们~非常感谢你的及时回复。我将原型修改为Mikey和您建议的synchronous,并使用新的split var,但在$.each(splitCntEditableTxt)上,它不起作用。我尝试添加一个警报,但它没有触发失败匹配,似乎没有运行比较代码。我得到了2个语法错误:1,SyntaxError:expected expression,Get'看起来加载txt文件有问题。若你们能解决这个问题,上面的代码片段就行了。我试着用alert(dictionary[123]);测试数组是否已成功创建,以及是否返回了一个单词。如果我使用旧方法$.inArray($(this.text().trim().toUpperCase(),dictionary);它确实有效,但每个标签中只有一个单词。你的代码走在正确的道路上,真正解决了拆分#note p部分的问题,但我不知道我做错了什么。天哪,它工作了~!!!非常感谢~!!!太棒了~~~再次感谢你的及时回复~~~