Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsp 如何将值从displaytag传递到新窗口并显示它?_Jsp_Struts_Displaytag - Fatal编程技术网

Jsp 如何将值从displaytag传递到新窗口并显示它?

Jsp 如何将值从displaytag传递到新窗口并显示它?,jsp,struts,displaytag,Jsp,Struts,Displaytag,我试过了 <display:table name="jobTrackerCol" pagesize="20" sort="list" id="data" requestURI="" class="tablelist"> <display:column title="Request Id" sortable="true" ><%-- property="request_id" > --%> <

我试过了

<display:table name="jobTrackerCol" pagesize="20" sort="list" id="data" requestURI="" class="tablelist">   
            <display:column title="Request Id" sortable="true" ><%-- property="request_id" > --%>   
            <a href=# onClick="popupSmallWindow('${data.query}');">${data.request_id}</a>   
            </display:column>   
</display:table>  

--%>   
javascript

function popupSmallWindow(query){   
    //window.location="http://www.continue.com";    
    myString = query.replace(/[\r\n]/g, "<br />");    

    alert(myString);   
}
函数popupmallwindow(查询){
//window.location=”http://www.continue.com";    
myString=query.replace(/[\r\n]/g,“
”); 警报(myString); }
${data.query}中的值是长sql查询


当我单击链接时,我想在“警报”或“新建”窗口中显示该查询。请在这方面指导我。首先,您需要退出该查询。事实上,如果你问的是

select a.id from a where a.name = 'doe'
生成的HTML代码将是:

onClick="popupSmallWindow('select a.id from a where a.name = 'doe'');"
这显然会导致问题,因为由于未替换的单引号,JS代码将无效

您可以使用ApacheCommonsLang来实现这一点

现在,警报框不显示HTML。因此,如果要在警报框中显示,则不能将
\r\n
转换为

。让它们保持原样,警报框将显示查询

如果您想要HTML支持,可以使用jQueryUI来显示SQL查询。如果这样做,则需要将
\r\n
替换为

。但是您可以在Java中这样做,并将查询放在一个隐藏的div中,jQueryUI对话框将使用该div作为其对话框的内容