我有一个JSP页面,它加载了另一个jsp页面的内容,它的工作非常好。问题是我想将request.getParameter("cfgname")
传递给这个内容页面,这样当它加载到主JSP中时内容就完成了。 (当前代码显示null
代替request.getParameter
这是我的主要JSP页面获取cfgid=41&cfgname=Abhishek&cfgdesc=test1&cfgtype=Development&filepath=files%2Fcsmclientbuckeye.xml
<title>Testing</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.get("content.jsp", addContent);
function addContent(data)
{
$("#content").html(data);
}
});
</script>
</head>
<body>
<div id="content"></div>
</body>
Content.jsp页面
<table class="csm-table" width="100%" cellspacing="0" cellpadding="4" border="0">
<tbody>
<tr>
<th width="25%">Configuration Name</th>
<td width="25%"><span id="cname"><%= request.getParameter("cfgname") %></span></td>
<th width="25%">Host Name</th>
<td width="25%"><span id="chostname">{hostname}</span></td>
</tr>
<tr> </tr>
<tr>
<th>Configuration Description</th>
<td><span id="cdesc"><%= request.getParameter("cfgdesc") %></span></td>
<th width="25%">Os Name</th>
<td width="25%"><span id="cosname">{osname}</span></td>
</tr>
<tr>
<th>Configuration Type</th>
<td><span id="ctype"><%= request.getParameter("cfgtype") %></span></td>
<th>Product Name</th>
<td><span id="cproductname"></span></td>
</tr>
<tr>
<th>Last Updated Time</th>
<td><span id="clastupdatetime"></span></td>
<th>Configuration File Name</th>
<td><span id="cfilename"><%= request.getParameter("filepath") %></span></td>
</tr>
</tbody>
</table>
你的两个(基斯和米克)的回答对我有帮助
我做了$.get("content.jsp?cfgname=<%= request.getParameter("cfgname") %>", addContent);
解决了我的问题。谢谢你们
答案 0 :(得分:2)
答案 1 :(得分:2)
从您的代码示例中查找,就像您正在调用没有参数的content.jsp:
$.get("content.jsp", addContent);
你需要这样称呼它:
$.get("content.jsp?cfgid=41&cfgname=Abhishek&cfgdesc=test1&cfgtype=Development&filepath=files%2Fcsmclientbuckeye.xml", addContent);
基本上,AJAX调用不能立即访问您首先加载的页面的URL参数,因此如果您需要将它们传递给AJAX调用的另一个HTTP请求,那么您需要遵循以下建议:另一张海报,用于构建查询字符串。