jqgrid在弹出框中显示图像
我在我的应用程序中使用 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>";
}
}
网格中的所有图像都出现在弹出窗口中,但最后一个图像出现在新的浏览器页面中。
可能会得到任何帮助。
提前致谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在自定义格式化程序内部,网格包含仍然作为字符串存在,而不是尚未放置在页面上。因此,您应该从 formatutter 函数中删除对
jQuery("a[rel='image']").prettyPhoto
的调用。相反,您可以在 。 php?id=wiki%3aevents#list_of_events" rel="nofollow">loadComplete 事件处理程序。此外,如果您尚未使用gridview:true
选项,则应使用它。它将提高电网性能。Inside of custom formatter the grid contain exist still as string and not yet placed on the page. So you should remove the calls
jQuery("a[rel='image']").prettyPhoto
from the formutter function. Instead of that you can call thejQuery("a[rel='image']").prettyPhoto
inside of loadComplete event handler. Additionally you should usegridview:true
option if you not already use it. It will improve the grid performance.