-2

最初の列がsr.noであるが、exam_idの値を保存したいテーブルを印刷するphpを使用しています。javascriptでこのExam_id値を取得するにはどうすればよいですか

        foreach ($data as $key) {
            echo "<tr>";
            print'
<td class="contact" id="exam_id" name=' . $key['exam_id'] ." width="5%" value='.$key['date'].'>' . $i . '</td>
<td class="contact"  width="20%">' . $key['date'] . '/' . $key['month'] . '/' . $key['year'] . '</td>
<td class="contact"  width="30%">' . $key['Title'] . '</td>
<td class="contact"  width="20%">' . $key['Branch'] . '</td>
<td class="contact"  width="6%">' . $key['Sem'] . '</td>
<td class="contact" width="24%" ><a onclick="javascript:create_result();" href="#">Create Result</a></td>';

            $i++;
            echo "</tr>";
        }

javacript は

<script type="text/javascript">
    function create_result() {

 var exam_id = document.getElementById('exam_id').value



      $.ajax({type:'POST', url: 'result/create_result',data:exam_id, success: function(response) {
              $('#content').html(response);
   }});
    return false;
}
</script>
4

1 に答える 1

0

まず、PHP コードをクリーンアップする必要があります。構文が少しずれていて、非常に読みにくいです。

PHP が HTML を正しく出力できるようになったら、使用している JavaScript を値に変更する必要がありgetますexam_id

@MarcB が言ったように、foreach ループであるため、PHP スニペットを複数回実行するため、HTML に重複した ID があります。その結果、 id を持つ多くのセルができますexam_id

の値を取得するには、特定のセルを参照できる必要がありますexam_id。問題のセルの ID は一意ではないため、クラスに変換する必要があります。<td class="contact exam_id" name... </td>

次に、各行を一意に識別する方法を見つける必要があります。これは、各行の Exam_id を行 (tr) 宣言にアタッチすることで実行できます"<tr id='exam-" . $key['exam_id'] . "' >";(これにより、PHP の 2 行目が置き換えられます)。

値を選択する前に、コンテキストとして使用する行を識別する方法を見つける必要があります。

于 2013-01-28T19:04:30.843 に答える