2011-05-03 76 views
0

如果您在jquery中调用模态对话框,但图像文件位于数组中,那么如何调用此对话框,如果点击链接,图像会弹出?现在,由于一个循环,它显然只使用最后一个文件名。jquery和Coldfusion循环

function showDialog(){ 
    $("#image_viewer").html('<iframe id="modalIframeId" width="100%" height="100%" marginWidth="0" marginHeight="0" frameBorder="0" scrolling="auto" />').dialog("open"); 
    $("#modalIframeId").attr("src","image_view.cfm"); 
    return false; 
} 
$(document).ready(function() { 
    $("#image_viewer").dialog({ 
     autoOpen: false, 
     modal: true, 
     height: 800, 
     width: 600 
    }); 
}); 
+0

你可以发布你的CF代码吗?不太清楚你想从JavaScript中做什么。 – bpanulla 2011-05-03 20:17:39

+0

从你的问题,很难说出你有什么问题。此外,您提到了循环,但是您发布的代码中没有循环。你能否提供一些额外的代码,和/或澄清你的问题? – Ender 2011-05-03 20:29:39

回答

1

您试图使用iframe作为模态对话框,您应该只使用DIV。

 
<!--- HTML ---> 
<div id="imageDialog" class="dialog" style="display:none;"></div> 

然后你就可以输出链接到你的图片列表如下:

 
<!--- CFML ---> 
<cfoutput query="qImages"> 
    <a href="#qImages.url#" class="image">#qImages.label#</a><br /> 
</cfoutput> 

最后,你可以直接打开网址的图像转换成使用bit类型的挂羊头卖狗肉的模态对话框。

 
<!--- jQuery ---> 
$(document).ready(function(){ 
    $('.dialog').dialog(
     { 
      autoOpen: false, 
      modal: true, 
      width: 440, 
      height: 330, 
      title: "Image Viewer" 
     } 
    ); 

    $('a.image').click(function(e){ 
     $('#imageDialog').load($(this).attr('href')).dialog("open"); 
     e.preventDefault(); 
    }); 
});