【发布时间】:2013-07-25 12:49:13
【问题描述】:
我有一个包含查询结果的 HTML 表格的页面。 在每一行旁边,我有一个按钮,单击该按钮时,会出现一个带有小 HTML 表单的灯箱,用户可以在其中输入评论。
当用户单击此表单上的提交按钮时,它应该将包含在行中的数据(即,如果可能的话,将每个单元格值作为数组发送)以及注释发送到脚本,脚本将插入它们在数据库中。
完成后,会出现一条小消息,说明灯箱消失,用户可以返回到桌子。
我的问题是将数据传输到将处理它的 PHP 脚本。 AJAX JavaScript 工作正常,只是我不知道如何发送数据。
代码如下:
function getOutput() {
//Get number of selected table row
var i = document.getElementById('rowclicked').value;
//Get the table
var table = document.getElementById('table');
//Get the comment
var comm = document.getElementById('comment').value;
var ajax = getRequest();
ajax.onreadystatechange = function(){
if(ajax.readyState == 4){
alert(ajax.responseText);
}
}
ajax.open("POST", "functions_comm.php", true);
ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
//Only try to send the table row for now
ajax.send(table.rows[i]);
}
如果我把 "php echo "test"; " in "functions_comm.php", "alert(ajax.responseText);"显示“测试”,以便该部分正常工作。 但是,如果我尝试“print_r($_POST)”,它会返回一个空数组,我认为这意味着“ajax.send(table.rows[i]);”没有传递任何数据。
如何将表格第 i 行的数据传递给 php 脚本?
谢谢。
【问题讨论】:
-
尝试报警/打印以控制 table.rows[i] 的值。这会让你看看它是否真的是空的。
标签: php javascript ajax post