0

我有以下脚本:

<script type="text/javascript">
        function get(row){
        alert(row);
        $.post ('getpeopleinjobs.php',{ 
        postvarposition: form.position1.value,
        postvarjob: form.job1.value, 
        postvarperson: form.person1.value, 
        postrow: row}, 
            function(output){
                $('#training'+row).html(output).show();
                    });
                }
</script>

这 100% 有效。但是,我希望附加到位置、工作和人员的“1”或数字成为变量“行”。类似下面的东西(不起作用)

postvarposition:form.position+row.value

我确实按照另一篇帖子的建议尝试了 form[position+row].value 但这不起作用。

如果 onchange="get(1)" 和 2 如果 onchange="get(2)" 等,则 alert(row) 返回 1,因此这是有效的。

如何将行变量连接到 positon、job 和 person 语句,以便随着行值的增加,我将得到 form.position1.value form.position2.value form.position3.value 等。

提前致谢。

4

2 回答 2

1

通过字符串访问表单值

form["position" + row].value
于 2012-07-12T06:32:36.513 回答
1

您可以使用 jQuery 选择器来获取输入值。

$('#prefix' + row).val()

HTML

<input id="job1" name="job1" type="text"/>
<input id="person1" name="person1" type="text"/>
<input id="position1" name="position1" type="text"/>

<input id="job2" name="job2" type="text"/>
<input id="person2" name="person2" type="text"/>
<input id="position2" name="position2" type="text"/>

<input id="job3" name="job3" type="text"/>
<input id="person3" name="person3" type="text"/>
<input id="position3" name="position3" type="text"/>

jQuery

for(var i=0;i<3;i++){ //each row
    var postvars = {
        job : $('input#job'+i).val();
        person : $('input#person'+i).val();
        position : $('input#position'+i).val();
    }
//
    $.post('url/to/ajax', postvars, function(output){
        $('#training'+i).html(output).show();
    }
}
于 2012-07-12T06:59:38.453 回答