如何使用javascript中的参数调用jsp和servlet

时间:2012-11-02 06:59:52

标签: javascript jsp servlets

以下是调用javascript函数的代码..

<td><input type="button" name="edit" value="Edit" onclick="editRecord(<%=rs.getString(1)%>);" ></td>

<td><input type="button" name="delete" value="Delete"  onclick="deleteRecord(<%=rs.getString(1)%>);" ></td>

javascripts函数是&#34; SSuers&#34;是表格名称。

<script language="javascript">

function editRecord(id){

var f=document.SSusers;
f.method="POST";
f.action= 'edit.jsp?+id='+id;
f.submit();}



function deleteRecord(id){
var f=document.SSusers;
f.method="post";
f.action='./DeleteServlet?id='+id;
f.submit();}
</script>

请帮助我修复它..

2 个答案:

答案 0 :(得分:1)

在做这些事情时,你总是要考虑它到达浏览器时的样子。考虑一下你的字符串是"fred"

的输出
<input ... onclick="editRecord(<%=rs.getString(1)%>);" >

...将

<input ... onclick="editRecord(fred);" >

请注意,fred不在引号中,因此JavaScript引擎会认为它是变量引用。

您需要在其周围加上引号并将结果正确地转义为HTML字符实体(因为您在HTML属性onclick中使用它),将"转换为&quot;等等,结果就是:

<input ... onclick="editRecord('fred');" >

(单引号)或

<input ... onclick="editRecord(&quot;fred&quot;);" >

(双引号)。

没有预先提供的JVM功能,但你可以使用Apache Commons的东西。

请注意,HTML编码仅 ,因为您在HTML标记的onclick属性中使用它。如果您在script元素中输出它,则需要对其进行不同的编码(可能使用任何几个Java库将其编码为JSON的结果,因为JSON是JavaScript文字的子集语法)。

答案 1 :(得分:0)

可以使用

调用你的jsp和servlet
location.href

以下是如何调用jsp和servlet的按钮链接。

<td><input type="button" name="edit" value="Edit" onclick="location.href='edit.jsp?id=<%=rs.getString(1)%>'; "></td>

<td><input type="button" name="delete" value="Delete" onclick="location.href='/Registrationform/DeleteServlet?id=<%=rs.getString(1)%>'; "></td>

无需拨打电话 它工作正常..