我在 JSP 中有一个表单,方式如下:
<form id="provision-field" method="post" action="${pageContext.request.contextPath}/myServlet">
<fieldset>
<ol class="fields">
<li>
<label for="field1">field1</label>
<input type="text" id="field1" "
value="<%= field1 %>"
/>
<span class="description">
<span class="optional">Optional</span>
</span>
</li>
</ol>
</fieldset>
<div class="actions">
<button type="submit" name="Submit">
Submit form
</button>
<a href="" class="close-dialog">Cancel</a>
</div>
</form>
单击提交按钮时,我有一个 js 片段执行以下操作
var field = document.getElementById("field1").value;
$.ajax({
url: '${pageContext.request.contextPath}/myServlet'
type: 'POST',
data: field,
dataType: "html",
success: function(html) {
alert("Success");
},
error: function(error){
alert("ERROR");
}
});
当我只使用表单元素时(即取出js代码),我可以访问我的servlet,但我的表单参数都没有传递。当我尝试使用 js 代码时,ajax 请求不起作用。有人可以指出我应该如何正确地做到这一点。
小服务程序代码是:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
logger.info("Inside the post function");
logger.info(request.getParameter("data");
}