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を試しましたが、これは機能しません。

alert(row)は、onchange = "get(1)"の場合は1を返し、onchange = "get(2)"の場合は2を返すため、これは機能しています。

行変数を位置、ジョブ、および人物のステートメントに連結して、行の値が増加するにつれて、form.position1.valueform.position2.valueform.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 に答える