gpt4 book ai didi

javascript - jQuery 检查多个 CSV 列表

转载 作者:行者123 更新时间:2023-12-02 14:17:23 25 4
gpt4 key购买 nike

为了简化我的问题,我重写了代码,没有解析 CSV,而是使用保存数据的变量。

--代码编辑---

$(document).ready(function() {
var qID = 'xxx';
var source = ['text1', 'text2', 'etc3'];
var source2 = ['text4', 'text5', 'etc6'];
$('#question' + qID + ' input[type="text"]').change(function() {
var validVal = 0;
var inputVal = $(this).val();
// Loop through the text and test the input value
$(source).each(function(i) {
if (inputVal == this) { // If a match is found...
validVal = 1;
}
});
// If a valid text was entered
if (validVal == 1) { // A valid input
alert("GOOD");
} else { // An invalid input
alert("NOT GOOD");
}

var validVal2 = 0;
var inputVal2 = $(this).val();

$(source2).each(function(j) {
if (inputVal2 == this) { // If a match is found...
validVal2 = 1;
}
});
// If a valid text was entered
if (validVal2 == 1) { // A valid input
alert("GOOD2");
} else { // An invalid input
alert("NOT GOOD2");
}
});
});

该脚本适用于一个源(var source),但我想检查同一文本字段中的 2 个变量(source、source2),它们将产生不同的警报。

该脚本通过石灰调查表单运行,输入是一个简单的 [type="text"] 字段。

如何检查同一文本字段中是否有 2 个不同的文本数组?

最佳答案

每当您发现自己在变量名称上添加计数器来创建一个系列时,您都需要停下来思考一下您实际上在那里做了什么。指定计数变量名称​​总是错误。

使用数组。

var qID = 'xxx';

var source = [];
source.push(['text1', 'text2', 'etc']);
source.push(['text1', 'text2', 'etc44']);
source.push(['text15', 'text25', 'etc454']);

$('#question' + qID + ' input[type="text"]').change(function() {
var valid = false;
var inputVal = $(this).val();

$.each(source, function(i, terms) {
$.each(terms, function(i, term) {
valid = inputVal === term;
return !valid; // returning false stops the .each() loop
});
return !valid;
});

if (valid) {
alert("GOOD");
} else {
alert("NOT GOOD");
}
});

表达上述嵌套循环的一种更有吸引力的方式是使用Array的内置方法。

var valid = source.some(function (terms) {
return terms.includes(inputVal);
});

在 ES6 语法中,这可以成为一行:

var valid = source.some(terms => terms.includes(inputVal));

关于javascript - jQuery 检查多个 CSV 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38921521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com