我应该在复选框的onclick函数中传递什么

时间:2019-05-01 14:21:26

标签: javascript

当我将“ this”传递给onclick函数以将复选框的值传递给onclick函数以获取复选框的值时,问题就来了,它给出了错误,因此我需要我应通过的支持以及如何获取复选框的值。

这是我传递值(HTML)的代码

<label>Step 4: Add delux wrapping:</label>
<input type="checkbox" name="delux" value="giftDeluxe" onclick="view(this);">

我将复选框的值转换为变量的javascript代码

function view(frm){
var extra = frm.delux.value;

}```

the expected output should be `extra = the value of the checkbox("giftDeluxe")`
the error that i get is: 

    Uncaught TypeError: Cannot read property 'value' of undefined
        at view (practiseExam.html:36)
        at HTMLInputElement.onclick (practiseExam.html:87)


1 个答案:

答案 0 :(得分:1)

由于您正在将复选框作为发送方传递给函数,因此您只需调用this.value即可获取所单击复选框的值。

在我的示例中,“ this”被传递给一个名为“ sender”的变量。我打电话给sender.value从复选框中获取值。

<label>Step 4: Add delux wrapping:</label>
<input type="checkbox" name="delux" value="giftDeluxe" onclick="view(this);">


<script type="text/javascript">

   function view(sender) {
      var extra = sender.value;
      console.log('extra -> ' + extra);
   }

</script>