siakad-kuesioner.js
· 1.1 KiB · JavaScript
Исходник
// Mendapatkan semua elemen dengan class "question-list"
let questionList = document.querySelectorAll(
'[class*="not-filled-in question-"]'
);
// Melakukan perulangan untuk setiap pertanyaan
questionList.forEach((radioGroup, i) => {
// Mendapatkan semua input radio dalam satu grup
const radioOptions = radioGroup.querySelectorAll(".option-jawaban");
// Menghitung nilai acak antara 1 dan 100
const randomValue = Math.floor(Math.random() * 100) + 1;
// Menentukan nilai input radio berdasarkan skenario yang diberikan
radioOptions.forEach((radio) => {
const options = radio.querySelectorAll('.opsi-radio input[type="radio"]');
try {
if (randomValue <= 70) {
options[3].checked = true; // Sangat Setuju
} else if (randomValue <= 90) {
options[2].checked = true; // Setuju
} else {
options[1].checked = true; // Tidak Setuju
}
console.log(`Berhasil menjawab pertanyaan ke-${i + 1}`);
} catch (err) {
console.error(`Gagal menjawab pertanyaan ke-${i + 1}: ${err.message}`);
}
});
});
| 1 | // Mendapatkan semua elemen dengan class "question-list" |
| 2 | let questionList = document.querySelectorAll( |
| 3 | '[class*="not-filled-in question-"]' |
| 4 | ); |
| 5 | |
| 6 | // Melakukan perulangan untuk setiap pertanyaan |
| 7 | questionList.forEach((radioGroup, i) => { |
| 8 | // Mendapatkan semua input radio dalam satu grup |
| 9 | const radioOptions = radioGroup.querySelectorAll(".option-jawaban"); |
| 10 | |
| 11 | // Menghitung nilai acak antara 1 dan 100 |
| 12 | const randomValue = Math.floor(Math.random() * 100) + 1; |
| 13 | |
| 14 | // Menentukan nilai input radio berdasarkan skenario yang diberikan |
| 15 | radioOptions.forEach((radio) => { |
| 16 | const options = radio.querySelectorAll('.opsi-radio input[type="radio"]'); |
| 17 | |
| 18 | try { |
| 19 | if (randomValue <= 70) { |
| 20 | options[3].checked = true; // Sangat Setuju |
| 21 | } else if (randomValue <= 90) { |
| 22 | options[2].checked = true; // Setuju |
| 23 | } else { |
| 24 | options[1].checked = true; // Tidak Setuju |
| 25 | } |
| 26 | |
| 27 | console.log(`Berhasil menjawab pertanyaan ke-${i + 1}`); |
| 28 | } catch (err) { |
| 29 | console.error(`Gagal menjawab pertanyaan ke-${i + 1}: ${err.message}`); |
| 30 | } |
| 31 | }); |
| 32 | }); |
| 33 |