如何将具有特殊字符的参数从一个jsp传递给另一个例如&

时间:2017-01-27 10:45:00

标签: jsp

我有一个showdata.jsp,其中包含表格格式的MySQL数据库中的所有数据。表格字段是,

id,firstname,lastname 

并且数据库中的所有字段都是varchar。

在每一行,该表都有更新按钮以编辑行详细信息。我将行的ID从showdata.jsp传递到updatedata.jsp,其中updatedata.jsp具有用于检索数据和编辑数据的文本字段。这适用于参数(id / string)而不包含特殊字符,但对于特殊字符串/ ids,这不是检索数据。 在showdata.jsp上传递的URL是

<a href="updatedata.jsp?id=<%=request.getParameter(1)%>">Update</a>

1 个答案:

答案 0 :(得分:1)

这是使用JSTL的解决方案

<c:url value="www.myurl.org" var="mylink"> <c:param name="arg1" value="Science & technology" /> <c:param name="arg2" value="Hello" /> <c:param name="arg3" value="World" /> </c:url> <a href="${mylink}">The link</a> 标记会自动编码参数值。

href

生成的链接<a href="www.myurl.org?arg1=Science+%26+technology&arg2=Hello&arg3=World">The link</a> 将为:

JSTL

注意:没有URLEncoder.encode的解决方案是使用URIPrivate WithEvents tv As TreeView Private checkBoxToSet_Node As Node Private checkBoxToSet_value As Boolean Private Sub tv_NodeCheck(ByVal Node As MSComctlLib.Node) Dim prompt As VbMsgBoxResult prompt = MsgBox("Do you REALLY want to set this checkbox?", vbQuestion + vbYesNoCancel) ' can't set the checked-ness here, so we store it If (prompt <> vbYes) Then Set checkBoxToSet_Node = Node checkBoxToSet_value = Not Node.checked End If End Sub Private Sub tv_Click() ' check if we had previously set a node to have its checkbox changed If (Not checkBoxToSet_Node Is Nothing) Then tv.Nodes(checkBoxToSet_Node.key).checked = checkBoxToSet_value Set checkBoxToSet_Node = Nothing End If End Sub (最后一个更安全),但由于这不是最好的解决方案,我只会提出这个想法; )