Javascript 如何使输入更改它';s对它的价值';谁的身份证?

Javascript 如何使输入更改它';s对它的价值';谁的身份证?,javascript,input,Javascript,Input,我想制作一个按钮,显示一些问题的答案,但对于输入框,我制作了一个按钮,因此输入框的id也是答案。所以我一直在尝试将文本更改为它的ID,但它不起作用,我不知道出了什么问题,有人能帮我吗 function bereken(){ var x = document.getElementsByTagName('input'); for (var i=0; i<x.length;i++){ document.getElementById(x[i].id).value

我想制作一个按钮,显示一些问题的答案,但对于输入框,我制作了一个按钮,因此输入框的id也是答案。所以我一直在尝试将文本更改为它的ID,但它不起作用,我不知道出了什么问题,有人能帮我吗

function bereken(){

    var x = document.getElementsByTagName('input');
    for (var i=0; i<x.length;i++){

        document.getElementById(x[i].id).value = x[i].id;

    }

}
函数bereken(){
var x=document.getElementsByTagName('input');

对于(var i=0;i它对我有效。此外,你可以使用

x[i].value = x[i].id;

如果您碰巧有多个问题的答案相同,那么您的系统将有重复的ID。这很糟糕

相反,使用
data
属性保存答案:

<input type="text" data-answer="Forty-two" />

然后将您的JS更改为:

for( i=0; i<x.length; i++) {
    x[i].value = x[i].getAttribute("data-answer");
}

对于(i=0;离子整体而言,虽然不是很有效,但这应该是可行的。问题可能出在您的HTML中。也添加它。谢谢,这很有效:)现在我知道我可以用fiddle测试东西了^^