[英]Getting Array positions in HTML automatically
I have many arrays some upto 60 some upto 100. I am trying to get the text at the 0 position of this arrays for all arrays. 对不起,我不知道如何正确地提出问题。 我不想为每个问候输入 (greeting[0])[1] 等 100 次。 到目前为止,这是我的代码。 有人可以帮助我吗? 问候 [0] 等实际上是 go 直到 60 等,是否可以做一些类似 let i = 0. 的问候,长度。 如果 i < 问候语,长度,i++。 并以某种方式放置(问候[i] [0]}。结果将是它显示段落元素或单独的window或其他内容中的所有问候显示的值。我对HTML还是新手,所以请原谅我是如果这看起来很基本。
编辑问题更新。 PS 我的一些 Arrays 的格式为 greeting[0] = new Greet["Hola", "Salve", "Olá"]。 我必须这样做,因为我使用了三个选项。 有什么办法可以让这个过程自动化吗?
已编辑的问题 - 更新 1 所以我更新了代码以更能代表我要问的内容。 基本上在这里我想提供一个按钮,以便在单击按钮时我可以看到我可以选择的所有英文单词。 所以我想做一些事情,比如在问候 0、1 等中获取英文单词的值并分别显示它们,这样我们就可以 select 我们想要哪个英文单词,而不仅仅是我们不知道它们代表什么单词的数字。 有人可以帮我解决这个问题吗!
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p id="English"> Select English Word </p>
<p id="French"> Click below button </p>
<p id="Italian"> Click below button </p>
<button onclick="Another()"> CLick </button>
<script type="text/javascript" src="./script.js"></script>
</body>
</html>
var greeting = [];
greeting[0] = new Word("Hi", "salut", "Ciao") ;
greeting[1] = new Word("Hello", "Salve", "Ciao") ;
greeting[2] = new Word("Welcome", "Bienvenue", "benvenuta") ;
greeting[3] = new Word("Good Day", "Bonne journée", "Buona giornata") ;
greeting[4] = new Word("Good Day", "Bonjour", "Buongiorno") ;
function Word(English,French,Italian) {
this.English = English ;
this.French = French ;
this.Italian = Italian ;
} ;
function Another() {
var nums = window.prompt("Select a number within " + greeting.length ) ;
var optionuser = greeting[nums] ;
var selection = alert("You selected English word " + optionuser.English )
document.getElementById("English").innerHTML = optionuser.English ;
document.getElementById("French").innerHTML = optionuser.French ;
document.getElementById("Italian").innerHTML = optionuser.Italian ;
}
我推荐使用Array.map(callback)
(参见: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map )
document.getElementById('something').innerHTML = greeting.map(item=>item[0]).join("<br>");
我在下面给出了一个稍微修改过的代码。希望这就是你要找的。 由于您是新手,因此建议不要在代码中使用 window.prompt。 探索其他方式。 function Word
更改为Class Word
。 我认为您正在尝试创建 Class 但给出了错误的关键字。 我没有提示,而是使用了单选按钮。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Select Language:</p>
<input type="radio" id="English" name="language" value="English">
<label for="English">English</label><br>
<input type="radio" id="French" name="language" value="French">
<label for="French">French</label><br>
<input type="radio" id="Italian" name="language" value="Italian">
<label for="Italian">Italian</label><br>
<input type="radio" id="Spanish" name="language" value="Spanish">
<label for="Spanish">Spanish</label><br>
<button onclick="Another()">Click</button>
<p id="msg"></p>
<script>
class Word {
constructor(English,French,Italian){
this.English = English ;
this.French = French ;
this.Italian = Italian ;
}
} ;
var greeting = [];
greeting[0] = new Word("Hi", "salut", "Ciao") ;
greeting[1] = new Word("Hello", "Salve", "Ciao") ;
greeting[2] = new Word("Welcome", "Bienvenue", "benvenuta") ;
greeting[3] = new Word("Good Day", "Bonne journée", "Buona giornata") ;
function Another() {
let optionSelected = document.querySelector('input[name="language"]:checked').value;
document.getElementById('msg').innerHTML += 'You selected:'+optionSelected;
for(let i=0;i<greeting.length;i++){
document.getElementById('msg').innerHTML += '<br>' + greeting[i][optionSelected];
}
}
</script>
</body>
</html>
注意:像以前一样使用单独的.js 文件。 出于回答目的,我使用了内联样式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.