我的主要目标: 当我点击链接时,应该打开一个新窗口并在该窗口中显示整个日志文件的内容,窗口不应该有地址栏和导航按钮(后退,前进)。
我能达到目标吗?
这是我想要做的,我试图通过传递日志文件的URL来调用java脚本方法,并考虑实现代码以打开新窗口
<table id="serverLogsStats" class="serverLogsView">
<c:forEach var="log" items="${logsList}" varStatus="i" >
<tr>
<td>${log.name}</td>
<td><a href="#" onclick="openLog('${log}');">Open log</a></td>
</tr>
</c:forEach>
</table>
<script>
function openLog (log) {
var abc = log.name;
alert(abc);
}
</script>
当我将对象'log'传递给openLog函数时,该值将作为String传递。我希望将日志作为对象传递。
这里我的输出是未定义的。
如果我把'警告(日志);'它正在打印对象的地址
答案 0 :(得分:1)
这应该有效:
<table id="serverLogsStats" class="serverLogsView">
<c:forEach var="log" items="${logsList}" varStatus="i" >
<tr>
<td>${log.name}</td>
<td><a href="#" onclick="openLog('${log.name}');">Open log</a></td>
</tr>
</c:forEach>
</table>
<script>
function openLog(logName) {
alert(logName);
}
</script>
你不能使用java对象并直接将它们用作JS对象,你只能传递原语。
对于您的用例,您可以让URL服务器端将日志名称作为参数并显示其内容。