javascript - 要求输入两个特定单词的输入框
问题描述
我是新手,所以我希望我能很好地解释我的问题是什么。
我有一个测验,我创建了一个输入框作为答案。要访问另一个链接,您必须在其中输入两个单词,但顺序应该无关紧要。不管你写“word1 word2”还是“word2 word1”都没有关系,应该只有一个规则:两个词都应该提到。那可能吗?
到目前为止我的代码:
function checkText()
{
var textwunf_1 = document.getElementById("wunf").value;
if(textwunf_1.toLowerCase() == "word1" && "word2"){
window.open("URL","_self");
}
else{
xxx
}
}
这没用。
在我只想检查是否使用了一个词之前,就像这样:
var textwunf_2 = 'word1';
function checkText()
{
var textwunf_1 = document.getElementById("wunf").value;
if(textwunf_1.toLowerCase().indexOf(textwunf_2) == -1){
xxx
}
else{
window.open("URL","_self");
}
}
这行得通,但我不能用两个词,因为如果我写
var textwunf_2 = 'word1 word2';
顺序不能是'word2 word1'...
我的问题有解决方案吗?
希望有人能理解和帮助我,谢谢!
解决方案
我正在创建一个接收文本并检查是否包含答案(xx
和yy
)的函数,顺序无关紧要。该ans
列表可以包含 1,2 个或更多单词,它会起作用。
let ans = ['xx','yy'];
function check(text){
text = text.toLowerCase();
let counter = 0;
ans.forEach((x) => {text.includes(x) && counter++ })
return counter === ans.length
}
console.log(check("aa bb")) // false
console.log(check("xx bb")) // false
console.log(check("aa yy")) // false
console.log(check("xx yy")) // true
console.log(check("yy xx")) // true
推荐阅读
- qt - Qt Quick Controls 2 和 QAbstractTableModel
- python - 如何解决我的 Django API 的 CORS 问题?
- javascript - 有什么方法可以让 Google Directions 路线前进 X 分钟?
- elasticsearch - 弹性搜索查询以在获取时比较两个日期字段
- git - 如何查看 refs/bisect/bad?
- c - C - 将 2 for 循环重写为 1 for 循环以复制数组。
- wordpress - 远程数据库导入和通过 FTP 上传文件后,站点主页 URL 正在重定向到本地服务器 URL
- json - 新的 Spring JSON 阅读器中是否存在错误,或者我做错了什么?
- c# - DotNet Core 2.1 自定义异常
- swift - 在 Swift 中使用可选参数迭代数组的惊喜结果