我有一个HTML页面。点击页面中的一个链接运行一个php函数,它向页面添加一个HTML表格(用AJAX实现,php函数在一个单独的php文件中)。
现在,我在页面上有一个按钮,它应该运行另一个php函数,该函数应该从表中获取数据并使用它执行某些操作。我不知道如何从表中获取数据,因为:
如果我在POST或GET参数中放置表中的所有内容怎么办?有没有办法引用表并迭代其行并以这种方式获取数据?谢谢。
答案 0 :(得分:4)
这不是PHP的工作,您应该使用Javascript捕获表内容,然后以任何方式操作它们。另一方面,如果表内容永远不会改变,那么你可以将它们放入PHP函数中。
您可以通过首先为表格设置ID来拉取表格的值,如下所示:
<table id="someTable">
<tr id="someRow">
<td>Data</td>
<td>Data2</td>
</tr>
</table>
然后,您可以使用JavaScript调用表中的值:
var row = document.getElementById("someRow");
var cellValues = row.getElementsByTagName("td");
这会将所有单元格放入一个数组中。然后你可以把它们变成变量。
var firstCell = cellValues[0].innerText;
var secondCell = cellValues[1].innerText;
然后您可以将其放入AJAX请求并将其发送到您的PHP函数进行处理。
这将向yourfile.php发送GET或POST请求,然后您可以以您想要的任何方式操作单元格行,并通过在PHP文件中回显它来发回结果。您可以通过发出回调函数来检索结果。
希望这有帮助, 克里斯
答案 1 :(得分:2)
我不知道如何通过php引用(获取)HTML元素。
使用JavaScript从表中获取数据。
我的php功能在一个单独的文件中。
创建另一个AJAX请求以使其由PHP处理,
答案 2 :(得分:1)
您无法从PHP引用HTML表。您的JS应该只是将从html表中提取的表数据作为JSON发送。您的PHP可以使用JS可以用来操作现有表的更多JSON进行响应。
用作XHR响应的php文件不应生成JS。只是JSON。
答案 3 :(得分:1)
是的,您必须将数据放入POST参数中。不要使用GET,因为表可能会变大。您可以使用javascript从元素中获取所有数据。使用ajax将数据发送到php页面。现在你可以获得帖子数据,因此可以获得它(例如持久化)。
你不能直接用php获取它的原因是因为html和javascript是由浏览器(客户端)运行而php运行在Web服务器(服务器端)。您需要在这些计算机之间进行某种通信以使用彼此的资源。