使用jquery从数组中的div获取所有标签文本和输入值

时间:2014-07-16 11:43:21

标签: jquery

<div class="control-group"
<label for="Student_DateOfEnrolment" class="control-label">Date</label>
<div class="controls">
<input type="text" value="1.1.0001 0:00:00" name="Student.DateOfEnrolment" id="Student_DateOfEnrolment" data-val-required="The Datum vpisa field is required." data-val-date="The field Datum vpisa must be a date." data-val="true" class="input-xlarge focused">
</div>
</div>

我有许多表单输入字段,如示例中所示。我可以以某种方式读取所有标签文本并将vales输入到数组并稍后显示。我想收集一些div中的所有内容。

到目前为止我做了什么:

$(function(){ 

                                $('#MyWizard').each(function (i, div) {
                                    alert('in here');
                                    $(div).find('input').each(function (j, element) {
                                        alert('lll');
                                    });
                                });
                            });

我在这里得到警报但没有“lll”

1 个答案:

答案 0 :(得分:0)

使用类<div>遍历每个control-group,我们可以从中深入查看<label><input>元素,收集他们的&#34;值&#34;把整个事物变成一个数组:

$(function() {
    var labelValuePairs = $('#MyWizard .control-group').map(function(el) {
        return {
            label: $('.control-label', el).text(),
            value: $('.controls :input', el).val()
        };
    }).get();
    console.log(labelValuePairs);
});

控制台的输出类似于:

> [Object]
  > 0: Object
     label: "Date"
     value: "1.1.0001 0:00:00"

这是一个对象数组,0 th 项是一个显示属性的对象。

jsFiddle Demo