我编写了一个简单的 jsp 代码,其中我使用的是 struts 1.3 html 标签库标签。我想在按钮的单击事件上对 struts 动作类进行 ajax 调用。为了使它成为可能,jQuery 需要元素的 id 或标签名称(这里是按钮的 id),因为我将在我的 JSP 中使用多个按钮,所以不可能使用标签名称。但是html标签库的元素没有“id”属性。请给我一个解决这个问题的方法?
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("#action").click(function(){
alert("inside function");
var dataToBeSent = $("form").serialize();
$.post("http://localhost:8013/MyProject1/details.do", dataToBeSent, function(data, textStatus) {
alert(data.income);
alert(data.taxReturn);
alert(textStatus);
$("#income").val(data.income);
$("#taxReturn").val(data.taxReturn);
}, "json");
});
});
</script>
</head>
<body>
<table>
<tr><td>
<html:form action="details.do">
SSN : <html:text property="numberSSN" /> <br/>
YEAR : <html:text property="year" /> <br/>
INCOME: <html:text property="income" value=""/><br/>
TAX: <html:text property="taxReturn" value=""/><br/> <br/>
<html:button property="action" >TestClickEvent </html:button>
<html:reset></html:reset>
</html:form>
<div id="details1">
</div>
</td>
</tr?
</body>
</html>
在这里我添加渲染的 html 代码
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("#htmlFindButton").click(function(){
alert("inside function");
var dataToBeSent = $("form").serialize();
$.post("http://localhost:8013/MyProject1/details.do?action=\"find\" ", dataToBeSent, function(data, textStatus) {
alert(data.income);
alert(data.taxReturn);
alert(textStatus);
$("#income").val(data.income);
$("#taxReturn").val(data.taxReturn);
}, "json");
});
});
</script>
</head>
<body>
<table>
<tr><td>
<form name="detailsForm" method="post" action="/MyProject1/details.do;jsessionid=A42FCDD6D26ACC6631384375C69D2743">
SSN : <input type="text" name="numberSSN" value="0"> <br/>
YEAR : <input type="text" name="year" value=""> <br/>
INCOME: <input type="text" name="income" value=""><br/>
TAX: <input type="text" name="taxReturn" value=""><br/> <br/>
<span id="htmlFindButton" >
<input type="button" name="action" value="TestClickEvent"> </span>
<input type="reset" value="Reset">
</form>
<div id="details1">
</div>
</td>
</tr>
</table>
<p>
<a href="/MyProject1/Welcome.do;jsessionid=A42FCDD6D26ACC6631384375C69D2743">Click me to access to JSP Welcome page</a>
</p>
</body>
</html>
在这里,我添加了完整的(在我向 LookUpDispatchAction 提交表单时有两个按钮)呈现的 html 代码