使用javaScript将来自按钮的值存储在变量中

使用javaScript将来自按钮的值存储在变量中,javascript,html,Javascript,Html,我有两个按钮,我想将按钮的value属性存储到一个名为amount的变量中。下面的代码显然是错误的,我有两个相同的id的两个按钮。在函数中,我应该如何将value属性保存到变量amount onclick <button type="button" id='btn' onclick='storeVar' value='1'>1</button> <button type="button" id='btn' onclick='storeVar' value='2'&g

我有两个按钮,我想将按钮的value属性存储到一个名为amount的变量中。下面的代码显然是错误的,我有两个相同的id的两个按钮。在函数中,我应该如何将value属性保存到变量amount onclick

<button type="button" id='btn' onclick='storeVar' value='1'>1</button>
<button type="button" id='btn' onclick='storeVar' value='2'>2</button>
<script>
  function storeVar() {
    var amount = document.getElementById('btn').getAttribute('value');
    console.log(amount);
  } 
</script>
1
2.
函数storeVar(){
var amount=document.getElementById('btn').getAttribute('value');
控制台日志(金额);
} 
属性id在文档中必须是唯一的,请改用类。同时将此
传递给函数,以便您可以参考函数中的当前按钮:

函数存储变量(el){
var金额=el.getAttribute(“值”);
//或者:简单地说
//var金额=el.value;
控制台日志(金额);
}
1
2
属性id在文档中必须是唯一的,请改用类。同时将此
传递给函数,以便您可以参考函数中的当前按钮:

函数存储变量(el){
var金额=el.getAttribute(“值”);
//或者:简单地说
//var金额=el.value;
控制台日志(金额);
}
1

2
为每个按钮提供唯一的id或完全删除id属性。修复html后,请尝试以下代码

1
2.
函数storeVar(v){
设金额=v;
控制台日志(金额);
}

为每个按钮指定一个唯一的id,或者完全删除id属性。修复html后,请尝试以下代码

1
2.
函数storeVar(v){
设金额=v;
控制台日志(金额);
}

确保具有唯一的Id

<button type="button" id='btn-one' onclick='storeVar(this.value)' value='1'>1</button>
<button type="button" id='btn-two' onclick='storeVar(this.value)' value='2'>2</button>

<script>
function storeVar(value){
    let amount = value;
    console.log(amount);
}
</script> 
1
2.
函数storeVar(值){
让数量=价值;
控制台日志(金额);
}

确保具有唯一的Id

<button type="button" id='btn-one' onclick='storeVar(this.value)' value='1'>1</button>
<button type="button" id='btn-two' onclick='storeVar(this.value)' value='2'>2</button>

<script>
function storeVar(value){
    let amount = value;
    console.log(amount);
}
</script> 
1
2.
函数storeVar(值){
让数量=价值;
控制台日志(金额);
}

我有两个相同的id用于两个按钮
,这是无效的HTML。先把它修好。您还需要在属性中正确调用函数,或者更好的是,使用Javascript正确地附加侦听器。属性
id
的值不应该相同。我有两个相同的id用于两个按钮,这是无效的HTML。先把它修好。您还需要在属性中正确地调用函数,或者更好的是,使用Javascript正确地附加侦听器。属性
id
的值不应该相同,何必麻烦
.getAttribute('value')为什么不直接使用
el.value
?@NewToJS,我尽量不改变OP的代码。。。。。虽然补充了这一点作为答案的一部分……。谢谢。可以理解,但由于您的答案更新,我相信这现在是一个更好的解决方案+1@NewToJS,感谢您帮助我改进答案:)最后一件事,您可以毫无疑问地删除
class
属性,因为它实际上没有被使用。另外,我们也欢迎您:)为什么要麻烦使用
.getAttribute('value')为什么不直接使用
el.value
?@NewToJS,我尽量不改变OP的代码。。。。。虽然补充了这一点作为答案的一部分……。谢谢。可以理解,但由于您的答案更新,我相信这现在是一个更好的解决方案+1@NewToJS,感谢您帮助我改进答案:)最后一件事,您可以毫无疑问地删除
class
属性,因为它实际上没有被使用。另外,欢迎您:)