最近修改PHP东西(ecshop),遇到一个问题,诚恳求助各位高手:
1.在php页面里利用smarty模板赋值,部分代码如下:
while ($row = $db->FetchRow($res))
{
if($cur==null)
$cur=$row['template_id'];
$modelrow[$row['template_id']]=$row['template_id'];
$modelcontent[$row['template_id']]=trim($row['template_content']);
$modelplates[$row['template_id']]=$row['template_subject']." -$row[content_category]-".$row['template_subject_second'];
// echo $modelcontent[$row['template_id']];
}
$smarty->assign('cur', $cur);
$smarty->assign('modelrow', $modelrow);
$smarty->assign('modelplates', $modelplates);
$smarty->assign('modelcontent',$modelcontent);
/*end*/
$modelcontent 数组传递到前台的dwt模板中 在js函数中:
1、显示获取一个变量值temp=$("#temp").val(); (这个变量值为1、2、3之类的,获取没有问题。)
2、var a='{$modelcontent.temp}';第二步利用变量获取$modelcontent的一个元素值,但是为空,不知道怎么样才能获取到;我在测试的时候var a='{$modelcontent.1}'获取数组下标为1的还是能够获取到。
现在问题是怎么根据已知变量获取到数组对应下标值?还是有其他解决的办法,谢谢各位!
ecshop
smarty
php
------解决方案--------------------
换成
var a='<?php echo{$modelcontent.temp}?>';
alert(a);看看结果
------解决方案--------------------
var a='{$modelcontent.'+temp+'}';
alert(a);
这样再试一下
------解决方案--------------------
http://www.zui88.com/blog/view-261.html
看看对你是否能有帮助
------解决方案--------------------
{lection}的时候不是有KEY么???
要么传质的时候多传一列储存KEY
------解决方案--------------------
smarty的循环会用吗? 我说的是循环数组。不是有个key列么。你便利数组的时候直接用
刚上面写错了
{section name=loop loop=$v}
{$v[loop].数组键值}
{/section}
你把key打印出来 看是不是key是其他的数字导致按KEY取不到正确的数值