这是我的问题。我有一个JSP。我想用Javascript动态创建一个超链接。我想在HTML中添加input
中的文本,并使用它将其作为参数传递到我的网址中:
<form name="test">
<P>Enter search: <input type="text" name="searchName"><BR><BR>
<input type="Button" Value="" onclick="location.href='search.jsp?typeOfSearch=" + JavaScriptFunction( that returns the String from searchName ) ' " >
</P>
</FORM>
我似乎无法在“onclick”字符串中添加JS函数。我试过HREF从一个锚,但我不能让它工作。我也试过像这样放一个JS函数:
<a href="MyJSfunction( that returns the entire URL ) " > hyperlink</a>
并且它也不起作用。我尝试了一百万种不同的东西,但仍然无法将动态参数从一个JSP传递到另一个JSP。
任何帮助都会非常好! ...
答案 0 :(得分:2)
无需JavaScript。只需设置表单方法和操作,使用提交按钮,然后重命名输入字段:
<form name="test" method="GET" action="search.jsp">
<p>
Enter search: <input type="text" name="typeOfSearch" /><br/><br/>
<input type="Submit" Value="Go" />
</p>
</form>
编辑但是,如果您只是好奇如何使用JavaScript,表单元素都具有form
属性。表单元素可以通过名称从表单中访问。因此,您可以使用this.form.searchName.value
以与按钮相同的格式获取searchName
字段的值:
<input type="Button" Value=""
onclick="location.href='search.jsp?typeOfSearch=' + this.form.searchName.value;" />
编辑:您使用当前代码遇到的麻烦可能是因为您的报价错误。将typeOfSearch="
末尾的双引号更改为单引号:typeOfSearch='
。在函数调用后删除单引号:
<input type="Button" value=""
onclick="location.href='search.jsp?typeOfSearch=' + JavaScriptFunction()" />
答案 1 :(得分:0)
如果您不太关心安全性,那么简单的HTML表单应该可行。
<form action="Your URL Here">
<input type="text" value="" name="search" />
<input type="submit" value="search" />
</form>