jqgrid показывает изображения во всплывающем окне - PullRequest
0 голосов
/ 29 августа 2011

Я использую jqgrid и prettyphoto в своем приложении.
У меня есть столбец, чтобы показать предварительный просмотр изображения. при нажатии на это изображение изображение будет отображаться во всплывающем окне.
код сетки ..

.....  
{name: 'imagePath', index: 'imagePath', width: 80, align: 'center',
    formatter :anchorFmatter, edittype: 'text', hidden: false, editable: true,
    editrules: {required: false}, editoptions: {size: 30}}
....
function anchorFmatter(cellValue, options, rowObject)
{
    if(cellValue === null ){
        return "<a></a>";
    }else {
        jQuery("a[rel='image']").prettyPhoto({
            animation_speed:'normal',
            show_title:false,
            allow_resize:true,
            default_width:640,
            default_height:385,
            theme:'light_rounded',
            autoplay:false
        });

        return "<a href='" + cellValue + "' rel='image'><img src='" + cellValue +
               "' width='100' height='35'></a>";
    }
}   

все изображения в сетке появляются во всплывающем окне, но последнее изображение появляется на новой странице браузера.
может получить любую помощь.
Заранее спасибо

1 Ответ

1 голос
/ 29 августа 2011

Внутри пользовательский форматер сетка содержит еще в виде строки и еще не размещены на странице.Поэтому вы должны удалить вызовы jQuery("a[rel='image']").prettyPhoto из функции formutter.Вместо этого вы можете вызвать jQuery("a[rel='image']").prettyPhoto внутри loadComplete обработчик событий.Кроме того, вы должны использовать опцию gridview:true, если вы еще не используете ее.Это улучшит производительность сетки.

...