Селектор jquery не работает внутри jqueryTemplate - PullRequest
0 голосов
/ 16 февраля 2012

Кто-нибудь знает, почему этот селектор 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 Ответ

1 голос
/ 16 февраля 2012

Прежде всего измените 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/

...