0

嗨程序员和网页设计师,我正在为与我合作的公司开发一个小型系统,一切都差不多完成了(感谢这个网站和其他网站的帮助......)除了这个我想要整行的功能我的 php 代码生成的表,现在我只能让我的第二列可点击。我已经尝试过使用谷歌搜索,但找不到可行的解决方案。仅供参考,我是菜鸟,刚开始学习 php.... 提前谢谢...

while($info = mysql_fetch_array( $data ))  
{ echo "<tr> class='tablerows' align=center onclick=\"window.location=http://active_jobs.php?job_ticket='".$info['job_ticket']."'\">
<td>".$info['date']."</td>; 
<td><a> href=somefile.php?job_ticket=".$info['job_ticket'].">".$info['job_ticket']."</td>
<td>".$info['invoice_no']."</td> <td>".$info['customer']."</td>
<td>".$info['job_type']."</td> <td>".$info['complete_date']."</td>
<td>".$info['complete_time']."</td>
<td>".$info['artist_operator_prepress']."</td>
<td>".$info['status_prepress']."</td>
<td>".$info['status_press']."</td>
<td>".$info['status_postpress']."</td> <td
width='300'>".$info['remarks']."</td>"; echo "</tr>"; 
} echo
"</table>";

在此先感谢您的帮助。马可

4

5 回答 5

3

您不能使用 PHP 使整行“可点击”。PHP 是一种服务器端语言;您生成 HTML 并将其吐出。

如果您想让整个表格行可点击,您要么必须将其包装在<a>(无效的 HTML)中,要么使用客户端语言(如 JavaScript)应用事件侦听器,侦听<tr>被点击并重定向到您想要的任何 URL。

于 2013-03-09T13:02:11.020 回答
1

您应该检查生成的 html,您正在关闭<tr>标签,因此类和 javascript 不再是其中的一部分:

{ echo "<tr> class='tablerows' align=center onclick=\"window.location=http://active_jobs.php?job_ticket='".$info['job_ticket']."'\">
           ^ remove this and check the html again; it probably works now

a您在标签的第四行有同样的错误。

于 2013-03-09T13:03:35.150 回答
1

对于使用 php 对表值进行实时编辑,您可以使用客户端脚本语言 javascript & jquery with ajax ..

以供参考 :

使用 Ajax 实时编辑表格

这是值得的...

于 2013-03-09T13:21:27.137 回答
0

我通过假设您知道 JQUERY 来回答这个问题。编写示例代码将其复制到文件“.html”中并运行。确保您已连接到互联网以让 jquery api 加载。谢谢。

前任:-

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>

$(document).ready(function(){
$('table tr').click( function () {
        alert('i am clicked');
        } );
});
</script>
</head>

<body>
    <table border="1">
<tr><td>1</td><td>apple</td><td>boy</td><td>jjjj</td><td>dddd</td><td></td><td>1010</td><td>1019</td><td>06-Mar-13 21:47:34</td></tr>
<tr><td>2</td><td>strawberry</td><td>girl</td><td>jjjj</td><td>dddd</td><td></td><td>1010</td><td>1019</td><td>06-Mar-13 21:47:34</td></tr>
<tr><td>2</td><td>strawberry</td><td>girl</td><td>jjjj</td><td>dddd</td><td></td><td>1010</td><td>1019</td><td>06-Mar-13 21:47:34</td></tr>
    </table>
</body>
</html>
于 2013-03-09T13:16:55.707 回答
0

好吧,您可以使表格行可点击。这很容易。您只需在每张桌子内制作隐形按钮即可出售。使它们没有边界和颜色。然后,只需将整行作为可点击按钮处理。您需要为行中的每个 TD 执行此操作。此外,您必须为每一行设置一个唯一的 ID,以便按钮可以识别行号。像这样松散的东西:

<td><button type='submit' name='click_row' value='" . $info["id"] . "' style='width: 100%; background: none; border: none; box-shadow: none;'>DATA FOR THIS TD</button></td>

然后,您需要处理该行的按钮。(该行中每个 TD 的按钮相同。)大致如下:

if (isset($_POST["click_row"])) {
   $clicked_row = $_POST["click_row"];
   //  Handle what you want done with this row...
}

对我来说效果很好!

于 2022-01-22T13:52:45.730 回答