0

不太确定你是怎么做到的。但我想在我的 while 循环中将我的 javascript 变量保存为 data(1,2,3,4,...) 。很高兴有任何帮助!谢谢

$id = 0;
while($rows = mysql_fetch_array($data)){

$id = $id + 1;
$data = $rows['data'];

?>


<script>
    var id = '<?php echo $id; ?>'; //1,2,3,4,5,6,...

    var data = '<?php echo $id; ?>'; // Example - Data 1 = Frog, Data 2 = Bird 

    // So here I want to sava variables so the name will be
    // var "data+'id'"; 
    // And the output is data for that row 
</script>


<?php
}
?>

//And here outside I want to use the variables like this:
document.write(data1); writes out "Frog"
document.write(data2); writes out "Pig"
4

2 回答 2

0
<script>
var jsData = [];

<?php
$id = 0;
while($rows = mysql_fetch_array($data)){
    $data = $rows['data'];
?>
    jsData[<?php echo $id; ?>] = '<?php echo $data; ?>';

<?php
    $id++;
}
?>

</script>

这将产生一个名为 jsData 的 JS 数组,其中您的 ID 是索引,其中填充了 PHP$data值。

于 2013-10-21T08:06:02.293 回答
0

在 WHILE LOOP 之前声明$data = new Array();,然后在 WHILE LOOP 中你可以做$data['id'][$id]= $id这将收集所有的 IDS。

在它下面添加$data['data'][$id]= $row['data'],以便收集data您想要的每个。

在脚本标签中这样做:

var id = <?php echo '['.join(',', $data['id']).']' ?> //will create --> [1,2,3,4,5,6,7]
var data = <?php echo '['.join(',', $data['data']).']' ?> //--> ['cat', 'dog', 'cow', 'sheep']

现在您可以访问创建的 Javascript 数组中的变量,例如。$data[0] // 'cat'

于 2013-10-21T08:26:19.973 回答