0

Java脚本代码:

<script type="text/javascript">
        $(function () {
         var  seatNo = 2;                                                       
         str.push('<a title="' + seatNo + '">' + '<?php echo $thisPacket["seat"]; ?>'</a>');
         }); 
</script>

我想$thisPacket["seat"]用 java Script 变量连接seatNo.
就像 php concate。示例:$i = 1; $thisPacket["seat".$i];

4

5 回答 5

1

我想在 $thisPacket["seat"] 和 java Script 变量 seatNo 之间连接。就像 php 连接一样。例如:$i = 1; $thisPacket["座位".$i];

不,这不起作用,因为 PHP 代码在服务器上运行,并且 javascript 变量seatNo在 javascript 代码在客户端上执行之前不可用。

于 2013-07-25T06:35:08.780 回答
1

最好的办法是将其序列$thisPacket化为 JSON 对象并将其发送给客户端:

<script type="text/javascript">
        var thePacket = <?=json_encode($thisPacket);?>;
        $(function () {
        var  seatNo = 2;                                                       
            str.push('<a title="' + seatNo + '">' + thePacket['seat'+seatNo] + '</a>');
         }); 
</script>

但我猜你应该真正重新考虑你当前的设计。

于 2013-07-25T06:45:26.137 回答
0

不,这是不可能的,因为 JavaScript 是一种客户端语言,它将在所有 PHP 命令在服务器中执行并完全呈现页面之后执行。但是 PHP 是一种服务器端语言,在解释任何 JavaScript 代码之前执行。

于 2013-07-25T06:30:57.457 回答
0

带你 php 变量并将其分配给 javascript 变量,而不是连接它们。

var phpVar = '<?php echo $thisPacket["seat"]; ?>';
var seatNo =  2;
var conVar = seatNo + phpVar;

我希望这会奏效

于 2013-07-25T06:44:38.897 回答
-1

这应该工作

<script type="text/javascript">
        $(function () {
        var  seatNo = 2;                                                       
            str.push('<a title="' + seatNo + '"><?php echo $thisPacket["seat"]; ?></a>');
         }); 
</script>
于 2013-07-25T06:28:52.210 回答