0

我正在使用以下 PHP 代码打印表格:

echo '<table> ';

echo '<tr>';

echo '<td> Cell 1';
echo '</td>';

echo '<td '.$myStyle.'> Cell 2';
echo '</td>';


echo '</tr>';

echo '</table> ';

$myStyle = 'style="color:red"';

我的问题是$myStyle单元格属性没有赋予单元格,除非它放在它之前。有没有办法在设置后刷新表格$myStyle以便采用新属性?我希望它以一种我保持$myStyle变量的方式。

4

3 回答 3

1

在客户端使用jqueryOR来完成此操作。Javascript

设置目标的 ID 或类属性,td然后应用以下 jquery,如

html:

echo '<td id="mytd"> Cell 2 </td>';

jQuery:

$(document.ready(function(){
$("#mytd").css("color","red");
});
于 2012-06-07T09:35:49.087 回答
1

如果您在生成表格时不知道单元格使用哪种样式设置,那么最好修改页面生成,可能使用输出缓冲(笨拙的解决方案)。如果做不到这一点,您可以只<td class=foo>在标记中生成,然后,当您知道为单元格设置的内容时,生成一个 HTML 元素,例如

<style>
.foo { color: red; }
</style>

这违反了 HTML 语法规则,因为style元素将在body元素内部,但它实际上在浏览器中有效——这样的元素中的设置会影响文档,甚至影响它之前的元素。

但这当然只是一个丑陋的解决方法,适用于体面的解决方案不适用的情况。

于 2012-06-07T09:56:45.370 回答
0

使用error_reporting(E_ALL),你会看到

Notice: Undefined variable: myStyle in/ss.php on line 10
Cell 1  Cell 2

将此变量放在脚本的顶部

<?php
error_reporting(E_ALL);

$myStyle = 'style="color:red"';

echo '<table> ';

echo '<tr>';

echo '<td> Cell 1';
echo '</td>';

echo '<td '.$myStyle.'> Cell 2';
echo '</td>';


echo '</tr>';

echo '</table> ';
于 2012-06-07T09:48:47.530 回答