我想将一个javascript变量传递给一个jsp scriptlet(两者都在同一个jsp中)。我尝试了以下。
enter code here
<html>
<script language="javascript" type="text/javascript">
function submit($i) {
var url=$i;
document.write("url is"+url); //giving me selected url and displaying on browser
window.location.replace("view.jsp?url="+url);
}
</script>
<form method="get" action="/UrlServlet">
<select name="url" id="url" onchoice="submit(value);">
<c:forEach var="dataList" items=${dataList}>
<option value="${dataList.url}">${dataList.url}
</c:forEach>
<%
String name=request.getParameter("url");
out.println(name);//giving me null as output
}
%>
</html>
当我打印名称时它给出一个空值。你能告诉我出了什么问题吗?当我在 javascript 中打印$i
值时,它会给我 dataList 中的 url 名称。这里的 dataList 是从我的 servlet 返回的列表。它只给出正确的值。但是,当我从下拉列表中选择一个 url 时,它给了我 null at request.getParameter()
。请问,有人可以帮我吗?
我
<%String st="<script>document.writeln(v)</script>;"
在scriptlet而不是window.location.replace()
javascript中尝试了这个。然后我也没有使用 getParameter 获取 url 值,而是得到与<%String st="<script>document.writeln(v)</script>
输出相同的语句。
请帮忙。