jquery选择器在jqueryTemplate中不起作用

时间:2012-02-15 20:44:20

标签: jquery jquery-templates

当我在模板中使用它时,有没有人知道为什么这个jquery选择器不起作用:(顺便说一句,我知道jQTemplates已被弃用)

var selector2 = $('ul').find('li');

-

<script id="tmpGallery" type="text/html">
    {{if showImage(this)}}
    <ul>
        <li><a href="http://farm${farm}.static.flickr.com/${server}/${id}_${secret}.jpg">
            <img alt="Historicats" src="http://farm${farm}.static.flickr.com/${server}/${id}_${secret}.jpg">
            </a>
        </li>
    </ul>
    {{/if}}
</script>
<script type="text/javascript">
function showImage(image){
    var selector2 = $('ul').find('li');
    //console.dir(selector2);
    //console.log("selector2 :"+selector2.length);
    return true;
}
</script>

您可以在以下位置运行代码:http://jsfiddle.net/mescalito2345/C6T7v/3/

任何解决方案?请!

1 个答案:

答案 0 :(得分:1)

首先将showImage(this)更改为showImage(),因为this您没有使用传递给showImage的任何参数。

根据你的小提琴代码,你需要使用这样的东西。

$(function() {
    $.each(images, function(i, img){
        $("#tmpGallery").tmpl(img).appendTo("#gallery");
    });
});

如下所示更改showImage,这将返回true,直到li元素变为10

function showImage(){
    return $('ul').find('li').length <= 10;
}

http://jsfiddle.net/C6T7v/17/