如题!
下边是代码:后台代码:
class Common extends Controller
{
    public function _initialize()
    {
     $nav=Db('nav')->order('navcat asc')->select();
     // print_r($nav);
     $request = Request::instance();
     foreach($nav as $key=>$val){
     $nav[$key]['controller']=strtolower($request->controller());
     }
     $this->assign('nav',$nav);
    }
}
打印出来的数组:
Array
(
    [0] => Array
        (
            [id] => 14
            [navname] => 111
            [navcat] => 1
            [navcontroller] => index
            [controller] => index
        )    [1] => Array
        (
            [id] => 8
            [navname] => 222
            [navcat] => 2
            [navcontroller] => article
            [controller] => index
        )    [2] => Array
        (
            [id] => 9
            [navname] => 333
            [navcat] => 3
            [navcontroller] => novel
            [controller] => index
        )    [3] => Array
        (
            [id] => 10
            [navname] => 444
            [navcat] => 4
            [navcontroller] => music
            [controller] => index
        )    [4] => Array
        (
            [id] => 11
            [navname] => 555
            [navcat] => 5
            [navcontroller] => movie
            [controller] => index
        )    [5] => Array
        (
            [id] => 12
            [navname] => 666
            [navcat] => 6
            [navcontroller] => message
            [controller] => index
        ))html页面的代码<div class="list">
                <ul>
                 {volist name='nav' id='nav_val'}
                 <a {if condition="$nav_val['controller'] == $nav_val['navcontroller']" } class="active" {/if}  href="#"><li>{$nav_val.navname}</li></a>
                 {/volist}
                </ul>
            </div>在html页面中,href的跳转 怎么写?
我最开始写的 href="{:url('$nav_val['navcontroller']/index')}" 运行报错!
拼接方法 href=“{:url(' '+$nav_val['navcontroller']+'/index')}” 还是报错!
希望大神帮忙分析一下
js方法,因为是一个循环,就必须给每个a标签加上id或者class,最后还是因为拼接字符串 ,从晚上七点 卡到现在 实在是头疼。
下面是Jquery 方法的html页面,希望指正
<div class="list">
                <ul>
                 {volist name='nav' id='nav_val'}
                 <script>
                 var aid={$nav_val['id']};
                 var nav="{:url('{$nav_val['navcontroller']}/index')";
                 $("#nav{$nav_val['id']}").attr('href',nav);
                 </script>
                 <a id="nav{$nav_val['id']}" {if condition="$nav_val['controller'] == $nav_val['navcontroller']" } class="active" {/if}  href="#"><li>{$nav_val.navname}</li></a>
                 {/volist}
                </ul>
            </div>

解决方案 »

  1.   

    这是tp么?
    你看一下最终输出的HTML是什么不就行了
      

  2.   

    你 href="#" 光摆弄 id 有什么用?
      

  3.   

    <a {if condition="$nav_val['controller'] == $nav_val['navcontroller']" } class="active" {/if}  href="#"><li>{$nav_val.navname}</li></a>改为:<a {if condition="$nav_val['controller'] == $nav_val['navcontroller']" } class="active" {/if}  href="/show_{$nav_val.id}.html"><li>{$nav_val.navname}</li></a>