循环遍历每个id检索一维数组和二维数组中对象的值

时间:2012-06-13 17:50:38

标签: jquery

循环遍历每个id检索1维数组和2维数组

中对象的值

jQuery的新手.. :(

3 个答案:

答案 0 :(得分:2)

首先:您应该更改课程的ID,然后

$(两者)

有:

$(".both") 

答案 1 :(得分:1)

首先,像这样构建HTML:

<form id="myform" action="myscript.php" method="get">
    <div>
        <div><textarea name="mytextarea[]"></textarea></div>
        <div><input type="checkbox" name="mycheckboxes1[]"><div>
        <div><input type="checkbox" name="mycheckboxes2[]"><div>
        <div><input type="checkbox" name="mycheckboxes3[]"><div>
    </div>

    <div>
        <div><textarea name="mytextarea[]"></textarea></div>
        <div><input type="checkbox" name="mycheckboxes1[]"><div>
        <div><input type="checkbox" name="mycheckboxes2[]"><div>
        <div><input type="checkbox" name="mycheckboxes3[]"><div>
    </div>

    <div>
        <div><textarea name="mytextarea[]"></textarea></div>
        <div><input type="checkbox" name="mycheckboxes1[]"><div>
        <div><input type="checkbox" name="mycheckboxes2[]"><div>
        <div><input type="checkbox" name="mycheckboxes3[]"><div>
    </div>
</form>

与所有表单一样,提交时,查询字符串将自动组合,包括name=value对字段名称和用户输入的数据。

或者,你可以用javascript构建自己的查询字符串,到目前为止最简单的方法是使用jQuery的.serialize()

var data = $("#myform").serialize();

通常,这样做是为了通过AJAX提交表单,例如

$.ajax({
    url: 'myscript.php',
    data: $("myform").serialize(),
    type: "GET",
    success: function(data, textStatus, jqXHR) {
        ...
    }.
    error: function(jqXHR, textStatus, errorThrown) {
        ...
    }
});

对于任一类型的提交,[]表示法使PHP(和其他服务器端语言)中的每个字段名称都可用作一维值数组。例如,第一个值块由表达式给出。

$_GET['mytextarea'][0];
$_GET['mycheckboxes1'][0];
$_GET['mycheckboxes2'][0];
$_GET['mycheckboxes3'][0];

涉及数据的操作通常会在循环中执行。

答案 2 :(得分:1)

首先使用class而不是ID,每页唯一ID ...根据您的需求: 其实你需要这样的东西:

var data = []
$(document).ready(function(){
    $('.both').each(function(){
        ta = $(this).children('textarea').val();
        cb = $(this).children('input:checked').val()
        data.push({t:ta,c:cb})
    });
    $.each(data, function(index, value){
        $('body').append('<p>t:'+value.t+' c: '+value.c+'</p>');
    })
})

DEMO HERE