2012-02-13 60 views
0

在android phonegap应用程序中,我动态地创建了带有问题和选项(chechbox)的div(每个问题有三个或四个复选框)。我有一个提交按钮。如何获取动态复选框的值?

现在我想获得问题的价值和选择选项,同时点击按钮。

如何做到这一点?

请帮助我。提前感谢。

+0

请不要将复选框描述为选项,因为HTML *不具备*

+0

你的意思是“选项”而不是“选项”?复选框的要点是可以选择零个或多个(而不是一个,这是单选按钮的用途)。 – Quentin 2012-02-13 12:48:25

回答

-1
$(function(){ 
    $('#mybuttonid').click(function(){ 
     var checkbox1 = $('#mycheckboxid1:checked').val(); 
     var checkbox2 = $('#mycheckboxid2:checked').val(); 
     ... 
    } 
} 

将返回true或false

+0

不,它不会。它将返回“未定义”或复选框的值。 – Quentin 2012-02-13 12:46:55

+0

让我看看你的代码 – melanke 2012-02-13 12:47:29

+0

嗯。我只是使用你的代码。由于在我测试的页面上没有匹配的元素,因此我得到了'undefined'。 – Quentin 2012-02-13 12:48:49

0

使用该工具来获取检查选项

$('#myform :checkbox').find(':checked').val(); 

,或者使用过滤器来代替:

$('#myform :checkbox').filter(':checked').val(); 

获得的所有值:

var checkedOptions = new Array(); 

    $("#myform :checked").filter(':checked').each(function() { 
     checkedOptions .push($(this).val()); 
    }); 
+0

这将只获取选中的第一个复选框的值。问题是要求多个复选框的值。 – Quentin 2012-02-13 12:54:14

+0

'find'不会工作。得到相匹配的后代,并且复选框不能有后代。 – Quentin 2012-02-13 12:55:24

1

试试这个:

var selected_values = new Array(); 
    $('#myform :checkbox').each(function(){ 
     if($(this).is(":checked")) 
      selected_values.push($(this).value) 
    }) 
+0

这实际上是工作 – Shaheer 2012-02-13 13:04:41

0

我一直在寻找同样的事情。我尝试了Yorgo的答案,但它不起作用。它只是需要使用

$(this).attr("value") instead of $(this).val(); 

工作了我一个小的调整

var selected_values = new Array(); 
$('#myform :checkbox').each(function(){ 
    if($(this).is(":checked")) 
     selected_values.push($(this).attr("value")); 
});