我使用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>
答案 0 :(得分:0)
首先,您需要清理PHP代码。语法有点偏,很难阅读。
一旦您设法让PHP正确输出HTML,您需要更改为使用的get
exam_id
值的JavaScript。
正如@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行)
现在,您必须找到一种方法来确定您希望将哪一行作为上下文,然后才能选择该值。