問題を単純化するために、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");
}
});
});
スクリプトは 1 つのソース (var source) に対して正常に動作しますが、同じテキスト フィールド 2 つの変数 (source、source2) をチェックインして、異なるアラートを生成したいと考えています。
スクリプトはlimesurveyフォームを介して実行され、入力は単純な[type="text"]フィールドです。
同じテキスト フィールド内の 2 つの異なるテキスト配列を確認するにはどうすればよいですか?