我们可以通过jsp中的anchor标签发送JavaScript变量吗?

时间:2013-02-04 16:22:23

标签: javascript xml jsp anchor

我需要通过锚标记<a>将userid变量从一个页面传递到另一个页面。登录后,每个页面都会显示此用户ID。这里我附上了

的代码

代码:

<td colspan="2" align="right"><div align="center">User Id</div></td>
<td><input class="textbox" type="text" id="userid" ><a href="access.jsp?userid='+userid'" 
"></a></td></tr>
 Javascript:
       var  userid =document.getElementBy("userid");

2 个答案:

答案 0 :(得分:1)

您需要使用javascript操作href属性才能插入值。例如,您可以通过使用onclick事件处理程序来实现此目的:

<a href="access.jsp" onclick="appendUserId(this)">

<script>
function appendUserId(e){
    e.href = e.href + "?userid=" + document.getElementById('userId').value;
}
</script>

答案 1 :(得分:1)

最基本的方法是将JavaScript window.location设置为该网址。

<input class="textbox" type="text" id="userid" />
<a href="javascript:window.location='access.jsp?userid=' + encodeURIComponent(document.getElementBy('userid'))">link</a>

<input class="textbox" type="text" id="userid" />
<a href="#" onclick="window.location='access.jsp?userid=' + encodeURIComponent(document.getElementBy('userid'))">link</a>

然而,正常的方法是只使用一个表单,这样参数最终在URL中“自动”结束,而不需要讨厌的基于JS的黑客/解决方法:

<form action="access.jsp">
    <input class="textbox" type="text" name="userid" />
    <input type="submit" value="submit" />
</form>

如果您主要关心的是按钮的样式,只需输入一些CSS就可以看起来像链接。

请注意,这一切与JSP完全无关,因为它只是一个HTML / CSS / JS代码生成器。在其他服务器端视图技术中也存在完全相同的问题,这些技术也产生HTML / CSS / JS,例如PHP,ASP等。