Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery选中复选框,然后向输入字段添加值_Javascript_Jquery_Forms_Input_Checkbox - Fatal编程技术网

Javascript jQuery选中复选框,然后向输入字段添加值

Javascript jQuery选中复选框,然后向输入字段添加值,javascript,jquery,forms,input,checkbox,Javascript,Jquery,Forms,Input,Checkbox,我有一个购物车结账页面,我正在尝试添加一个“礼物”选项。需要做的事情:选中“作为礼物发送订单”复选框后,需要为隐藏的输入字段分配一个值,以便将信息移动到确认页面和各种收据上 HTML: 将订单作为礼品发送 这是一份礼物, 请不要附上收据。 $(文档).ready(函数(){ $(“#gift true”).input($(“#编辑复选框id”).is(“:checked”).val()+“Yes”); });​ 包含一条消息 (限100个字符): 用于设

我有一个购物车结账页面,我正在尝试添加一个“礼物”选项。需要做的事情:选中“作为礼物发送订单”复选框后,需要为隐藏的输入字段分配一个值,以便将信息移动到确认页面和各种收据上

HTML:

将订单作为礼品发送
    这是一份礼物, 请不要附上收据。 $(文档).ready(函数(){ $(“#gift true”).input($(“#编辑复选框id”).is(“:checked”).val()+“Yes”); });​ 包含一条消息 (限100个字符):
用于设置输入元素的值。返回一个布尔值,因此您必须检查它是否为
true
(使用
if
语句或下面类似的三元运算符),然后有条件地更新该值。此外,还应更新此值:

此外,如果您的复选框为:

<input type="checkbox" name="gift" id="gift" class="checkbox" value="" />

适当的id选择器是
$(“#礼物”)
,而不是
$(“#编辑复选框id”)
$(“#编辑复选框id”)。is(“:checked”)
根据复选框状态返回布尔值true/false。因此,您应该使用它作为条件,并决定使用
val
jQuery方法设置值的内容。试试这个

$("#gift-true").val( $('#edit-checkbox-id').is(':checked') ? "Yes": "No" ); 

每当复选框更改时,您必须更新隐藏字段:

$(function(){
    $('#gift').change(function() {
        $("#gift-true").val(($(this).is(':checked')) ? "yes" : "no");
    });
});

您可以使用CSS伪类,例如:

var checked=$('input[id="#gift-true"]:checked').length;
var isTrue=false;
if(checked)
    isTrue=true;
else
    isTrue=false;

只是上面问题的副本$(“#礼物”)应该可以。太好了!这对我来说非常有效。我改变了一件事(如果你预见到了这个问题,请告诉我):
$(“#gift true”).val(($(this.is(':checked'))?“是”:“)我需要“否”为空,因为如果输入中有任何值,它将移动到收据,我不希望购物者看到“礼物:否”,因为不需要。好的。使用“”而不是“否”不应该有任何问题。
$(function(){
    $('#gift').change(function() {
        $("#gift-true").val(($(this).is(':checked')) ? "yes" : "no");
    });
});
var checked=$('input[id="#gift-true"]:checked').length;
var isTrue=false;
if(checked)
    isTrue=true;
else
    isTrue=false;