日期:2014-05-17  浏览次数:20443 次

请问怎么把一个PHP数组放到这个JS里面啊?
........................................
foreach($category as $group) {
$groupselect.= "<option value=\"$group[cateid]\" selected>$group[name]</option>\n";
}
echo <<<EOT
<script type="text/JavaScript">
var rowtypedata = [
[
[1,'', 'td25'],
[1,'<input type="text" class="txt" size="12" name="groupnamenewadd[]">', ''],
[1,'<select name="groupnamenewadd[]"><option value="$groupselect">$groupselect</option></select>', ''],

[1,'<input type="text" class="txt" size="12" name="groupurlnewadd[]">', '']
]
];
</script>
EOT;


试了好多种写法。都不行。只好上来求助了。$groupselect怎么才能写到JS里面呢?

------解决方案--------------------
你已经瓶装好了字符串
$groupselect .= "<option value=\"$group[cateid]\" selected>$group[name]</option>";

那就直接放进去就是了
....
[1,'<select name="groupnamenewadd[]">$groupselect</select>', ''],

------解决方案--------------------
foreach里groupselect包含option了,下面还用option?
------解决方案--------------------

<script type="text/JavaScript">
 var rowtypedata = [
 [
 [1,'', 'td25'],
 [1,'<input type="text" class="txt" size="12" name="groupnamenewadd[]">', ''],
 [1,'<select name="groupnamenewadd[]"><?php $groupselect ?></select>', ''],
 
[1,'<input type="text" class="txt" size="12" name="groupurlnewadd[]">', '']
 ]
 ];
 </script>

------解决方案--------------------
引用:
引用:JavaScript code?1234567891011<script type="text/JavaScript"> var rowtypedata = [ [ [1,'', 'td25'], [1,'<input type="text" class="txt" size="12" name="groupnamenewadd……

[1,'<select name="groupnamenewadd"><option value="groupselect"><?php $a=1;echo $a;?></option></select>', ''],并贴出你的测试结果
------解决方案--------------------
你应该先组成一数组,然后这样,
var rowtypedata = <?php echo json_encode($arr);?>;

像你这样拼的话要注意单双引号

你上面是用单引号,$groupselect有单引号的话,js就出错了。
------解决方案--------------------
补充下
var str='<?php echo json_encode($arr);?>';
var arr=eval('('+str+')');
看下arr是不是你想要的js数组
------解决方案--------------------
如果上面的不对试试这样
var str=<?php echo json_encode($arr);?>;
var arr=eval(str);