gpt4 book ai didi

javascript - 使用 request.getParam 获取按钮的 id

转载 作者:行者123 更新时间:2023-12-01 19:56:12 31 4
gpt4 key购买 nike

我有多个名称相同但值不同的按钮。

<input type="submit" id="1" value="1" name="disksheet" onclick="getId(this.id)"/>

<input type="submit" id="2" value="2" name="disksheet" onclick="getId(this.id)"/>

<input type="submit" id="3" value="3" name="disksheet" onclick="getId(this.id)"/>

单击按钮时,我试图获取按钮的值并找出单击了哪个按钮。我尝试在 JSP 页面中使用 request.getParameter("disksheet") 来执行此操作。

function getId(diskid) {
var form = document.getElementById("form");
var id = diskid;

var myAjax = new Ajax.Updater("output",
"/jsp/Limiter.jsp", {
asynchronous : true,
postBody : Form.serialize(form), id,
data: diskid,
method : 'post',

onComplete : function() {

}

});

}

Limiter.jsp 页面:

<% String id = request.getParameter("disksheet")%>

但是,这只是返回第一个按钮的值,无论我单击哪个按钮,该值每次都是 1。我想通过单个请求获取该值,这样我就不必为页面的其余部分编写多个 if else 语句。

最佳答案

我猜你得到了错误的参数名称。您正在 Ajax 中发送 diskid,但请求磁盘表。

这对我来说是一个名为 Test 的 servlet:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
</head>
<body>
<input type="submit" id="1" value="1" name="disksheet"
onclick="getId(this.id)" />
<input type="submit" id="2" value="2"
name="disksheet" onclick="getId(this.id)" />
<input type="submit"
id="3" value="3" name="disksheet" onclick="getId(this.id)" />
<h2 id="output"></h2>
<script>
function getId(id){
$.ajax({
type: "POST",
url : 'test',
data : {
diskid : id
},
success : function(responseText) {
console.log("from servlet ", responseText);
document.getElementById("output").innerHTML = responseText;
}
});
}
</script>
</body>
</html>

作为一个 servlet,我有:

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String clickedButton = request.getParameter("diskid");
response.setContentType("text/plain");
response.getWriter().write("clicked " + clickedButton);
}

输出示例:

Output example

关于javascript - 使用 request.getParam 获取按钮的 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59040221/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com