比如这样可以吗:<a href="...">javascript:substr({$title},0,50)</a>
我知道这样不行,那应该怎么做呢?
请指点!

解决方案 »

  1.   

    而且,上面这个<a>标签还是包含在这段代码的中间哦:
    <!--{loop $teams $index $one}-->
    <a id="a1" href="..." ></a>
    <script type="text/javascript">
    <!--
    title1={$one['title']};       document.getElementById('a1').innerHTML=sb_substr(title1,0,50);
    -->
    </script>
    <!--{/loop}-->改成这样,好像也不行! <a>标签 什么字符也没有显示!
      

  2.   

    这样怎么也不行:
    <!--{loop $teams $index $one}-->    
    <a id="a1" href="..." ><script type="text/javascript">
    <!--
    echo sb_substr({$one['title']},0,50);
    -->
    </script></a>
    <!--{/loop}-->
    唉!
      

  3.   


    <!--{loop $teams $index $one}-->    
    <a href="..." ><?php echo utf8Substr({$one['title']},0,50); ?></a>
    <!--{/loop}-->
    这样子怎么会提示:
    Parse error: syntax error, unexpected '<', expecting ')' in 
    ...\index.php on line 25嗯
      

  4.   

    楼主是在用最土的程序吧,这样写:<!--{loop $teams $index $one}-->    
    <a href="..." >${utf8Substr($one['title'],0,50)}</a>
    <!--{/loop}-->不知道你的函数是不是utf8Substr(),你可以测试一下如果提示函数错误的话,就用substr()测试一下
      

  5.   

    谢谢 清风闲客 ,可以了,再问一个问题可以吗?
    我把
    <?php
    //截取utf8字符串
    function utf8Substr($str, $from, $len)
    {
        return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
                           '((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
                           '$1',$str);
    }
    ?>
    放在模板页的最上方,这样没问题。
    但是如果我把它独立成一个文件  q.php
    然后在模板上调用,
    <?php include_once 'q.php'; ?>
    这样怎么会提示错误呢:
          Fatal error: Call to undefined function utf8substr() in D:\...\team_index.php on line 17
      

  6.   


    这个函数名称是大写的S: utf8Substr,
    可是你写的是小写的S utf8substr
      

  7.   


    我检查了一下代码,全部都是大写的S啊!也不知道这个小写的s是怎么冒出来的!
    幽灵的小s!
    你看:全是大S:
    q.php<?php
    //截取utf8字符串
    function utf8Substr($str, $from, $len)
    {
        return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
                           '((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
                           '$1',$str);
    }
    ?>
    模板:<a id="a1" href="...">${utf8Substr($one['title'],0,45).'...'}</a>
      

  8.   

    模板的第一行:<?php include_once 'q.php'; ?>
      

  9.   

    lz用的是smarty模板吧,这样是不能直用js的,js需要放在{literal}js代码{/literal}中间....
      

  10.   

    你要是觉得不方便可以吧模板的标识{}换成<{}> 或者别的符号 就可以用js了
      

  11.   

    现在不用javascript了,用php函数。可以是可以,却出现了 7楼 和 13楼 那样的问题,无法将PHP函数放在一个独立的文件中调用,
    不知能不能再指点一下?