在javascript中将参数传递给弹出窗口
可能重复:在javascript中将参数传递给弹出窗口,javascript,html,Javascript,Html,可能重复: …赖特。我找到了问题的答案。我忘了在弹出窗口代码中的一些jsp scriplet标记周围添加“”。由于这个原因,本应该是字符串的值没有被正确处理 我将标记此问题以引起主持人的注意。从这个问题中我们唯一能学到的就是在使用jsp脚本时要注意 我想使用window.open()从.js代码中打开一个弹出窗口。我有几个参数需要传递给这个弹出窗口。我很惊讶这并不像我想象的那么简单,我试着寻找答案,但我发现的都是相当复杂的解决方案——我希望有一个简单的答案 我尝试过很多方法,但我认为应该这样做
…赖特。我找到了问题的答案。我忘了在弹出窗口代码中的一些jsp scriplet标记周围添加“”。由于这个原因,本应该是字符串的值没有被正确处理 我将标记此问题以引起主持人的注意。从这个问题中我们唯一能学到的就是在使用jsp脚本时要注意 我想使用window.open()从.js代码中打开一个弹出窗口。我有几个参数需要传递给这个弹出窗口。我很惊讶这并不像我想象的那么简单,我试着寻找答案,但我发现的都是相当复杂的解决方案——我希望有一个简单的答案 我尝试过很多方法,但我认为应该这样做
window.open('../common/MapPopup.jsp?current='+currentPosition+'&areas='+sAreas, 'mywindow', 'width=600,height=450,scrollbars=yes');
我完全不知所措。可能是那个窗户。在这种情况下,打开不起作用
编辑:当前我的页面的行为如下。用户按下一个表单按钮,它将向我们的数据库中启动一个查询。从该数据创建一个DataTables表。在初始化DataTable时,jQuery代码也是如此。我使用jQuery在用户单击DataTables表中的一行时打开一个弹出窗口
renderReport: function(response){
$('#requestDataContainer').html(response);
oTable = $('#dataTable').dataTable({
"bPaginate": true,
--snip-- //DataTables init
});
var sProcedures = new Array();
var sAreas = new Array();
var sCurrentPosition = null;
$('#dataTable tr').click(function(){
var sCurrentPosition = oTable.fnGetData(this,9);
if(sCurrentPosition!=null){
$('#dataTable').find('tr').each(function(){
var foo = oTable.fnGetData(this);
if(foo!=null){
if(foo[8]!='null')
sAreas.push(foo[8]);
if(foo[7]!='null')
sProcedures.push(foo[7]);
}
});
}
window.open('../common/reportMapPopup.jsp?procedures='+sProcedures+'&areas='+sAreas+'¤t='+sCurrentPosition, 'reportMap', 'width=600,height=450,scrollbars=yes');
});
},
我必须承认,我对网络代码很不熟悉。我在不断地学习,所以这个术语对我来说可能是新的,我可能会用一种非常愚蠢的方式做事。可能是我在网上查找时找到了答案,但没有意识到。如果url中的查询字符串被传递到窗口,您应该能够使用JS和location对象从窗口访问这些参数(http://www.w3schools.com/jsref/obj_location.asp)
如果您可以访问实际页面-您不能使用jsp重新设置参数吗?您可以复制整个代码吗?例如,在初始化变量时,等等。对不起,我真的不明白你的意思。弹出窗口在初始化时抛出一个错误-它确实出现了,但我认为它没有时间执行任何代码或任何东西。将其视为另一个页面-文档准备就绪等。将url复制到浏览器进行测试。