网页看起来像这样。我在代码中有两个数组作为输入,想在 showscore() 函数中检索数组的内容,我粘贴了我尝试过的代码片段。该查询将给出一个字符串列表,这些字符串存储在 arr1 和 arr2 中,并在以后的代码中进行混洗。将混洗后的 arr1 显示给用户,然后使用存储在城市数组中的表单输入响应。
<script type="text/javascript" src="scripts/getScore.js"></script>
<div id="score">
<?php
for ($i = 0; $i < $number; $i = $i + 1) {
?>
<form id="main">
<?php
echo $string1 . " " . $state[$i] . " " . $string2 ?>
<input type="text" placeholder="Enter answer" name="city[]" required />
<?php
}
?>
<input type='hidden' name='capital[]' value="<?php echo json_encode($capital); ?>" />
<button type="button" value="Submit" onclick="showscore()">Submit</button>
</form>
</div>
getScore.js 中的 showscore() 函数是:
function showscore() {
var request;
if (window.XMLHttpRequest) {
request = new XMLHttpRequest();
}
else {
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
console.log(this.responseText);
document.getElementById("score").innerHTML = this.responseText;
}
};
var myForm = document.forms.main;
var city = mForm.elements['city[]'];
var capital=myForm.elements['capital[]'];
console.log(city);
console.log(capital[0]);
var c =0;
for (var i = 0; i < capital.length; i++) {
console.log(capital[i]);
console.log(city[i]);
if(city[i] == capital[i]){
c++;
}
}
console.log("Your Score is "+c);
}
守着一只汪