Jquery 访问与复选框相关的子元素

Jquery 访问与复选框相关的子元素,jquery,Jquery,我有一个选择选项的用户详细信息列表,现在我想获得所选用户并获取相应的文本框值 对于获取选定用户,我有一个简单的jQuery:- var selected = new Array(); $('.dummy-class ').click(function (e) { if (this.checked) { selected.push(this); } else { var index = selected.indexOf(this);

我有一个选择选项的用户详细信息列表,现在我想获得所选用户并获取相应的文本框值

对于获取选定用户,我有一个简单的jQuery:-

var selected = new Array();
$('.dummy-class ').click(function (e) {
    if (this.checked) {
        selected.push(this);
    } else {
        var index = selected.indexOf(this);
        selected.splice(index, 1);
    }
    console.log(selected);
});
现在,我很困惑如何选择里面的元素

//Access values of selected elements while saving and creating OBJECT
$('.SaveDetails').click(function () {
    console.log(selected);
    var tempArray = [];
    $.each(selected, function (index, value) {
        console.log($(this).find("input:first").attr("value"));//Its not working

        var temp = {};
        temp.FirstName = $(this).find("input:first").attr("value");"));//Its not working
        tempArray.push(temp);
    });
    console.log(tempArray);
});

您可以找到复选框所在的
.panel
元素,然后在其中找到名为
的输入元素

var selected = new Array();
$('.dummy-class ').change(function (e) {
    if (this.checked) {
        selected.push(this);
    } else {
        var index = selected.indexOf(this);
        selected.splice(index, 1);
    }
    console.log(selected);
    var $panel = $(this).closest('.panel');
    console.log($panel.find('input[name="first"]').val())
});
您必须首先确保所有名称字段都具有名称


演示:

如果您试图在
$('.SaveDetails')内使用,请单击(函数()
处理程序),然后尝试以下操作:

$('.SaveDetails').click(function () {
    console.log(selected);
    var tempArray = [];
    $.each(selected, function (index, value) {
        console.log($(this).closest('.panel').closest('.panel').find("input:first").val());//Its not working

        var temp = {};
        temp.FirstName = $(this).closest('.panel').find("input:first").val();"));//Its not working
        tempArray.push(temp);
    });
    console.log(tempArray);
});