-2

我使用 php 打印我的表,其中第一列是 sr.no,但我想在其中存储exam_id 的值。我如何通过 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,您需要更改为您正在使用get的JavaScriptexam_id值。

正如@MarcB 所说,您的 HTML 中有重复的 ID,因为您将多次运行 PHP 片段,因为它是一个 foreach 循环。这将导致您拥有许多带有 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 回答