返回值"已检查"来自变革事件

时间:2016-02-09 22:51:32

标签: javascript jquery html5 checkbox

我声明了一个变量,并希望将复选框的状态传递给dhcp_addr变量,并在选中复选框时将其设置为1,取消选中时将其设置为0。在向变量返回值时需要一些帮助。

var dhcp_addr = $('#dhcp').change(function () {
  if(dhcp.checked) {
    console.log("checked");
  } else {
    console.log("unchecked");
  }
});

4 个答案:

答案 0 :(得分:7)

您无法从功能中“返回”它,因为任何时候都可能发生更改。相反,您可以在发生更改时重新分配值。

var dhcp_addr;
$('#dhcp').change(function() {
  if (this.checked) {
    dhcp_addr = 1;
  } else {
    dhcp_addr = 0;
  }
});

但是,如果您对10值使用truefalse,我建议您更直接地使用这些值。

dhcp_addr = this.checked;

答案 1 :(得分:1)

这是我提出的最简单的方法:

var dhcp_addr;

$("#dhcp").change(function () {
  dhcp_addr = this.checked ? 1 : 0;
});

答案 2 :(得分:0)

您可以使用此代码简化它

var dhcp_addr;
$('#dhcp').change(function() {
 dhcp_addr = +this.checked;
});

因此,this.checked为布尔值,+true转换为数字(1),+false为0。

答案 3 :(得分:0)

尝试下面的代码段:



var dhcp_addr = $('#dhcp').change(function(){
  alert ( $('#dhcp').is(':checked') ? 1 : 0 );
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" name="dhcp" id="dhcp" value="on" />Check <br />
&#13;
&#13;
&#13;