gpt4 book ai didi

java - 无法将 JSON 对象提交到 JSP

转载 作者:太空宇宙 更新时间:2023-11-04 06:36:13 25 4
gpt4 key购买 nike

我正在尝试将 JSON 对象发送到 JSP 进行解析。 JavaScript 代码是:

function sendData(field1, oper1, value1, field2, oper2, value2, field3, oper3, value3){
var formData = {"field1":field1, "oper1":oper1, "value1":value1, "field2":field2, "oper2":oper2, "value2":value2, "field3":field3, "oper3":oper3, "value3":value3};
$.post("<%=request.getRequestURL().toString()%>getInfo.jsp", {formData:formData}, function(response){alertHere(response)});
}

function alertHere(){
window.alert("Post Successful!")
}

我的提交按钮是:

<input type="submit" value="SEARCH" name="submit" class="srchbutton" onclick="sendData(document.getElementById('field1').value, document.getElementById('oper1').value>

单击 JavaScript 按钮时还会传递几个字段,我只是不想发布那么长的一行。

当我尝试在表单中发布文本数据时,我的 Web 开发人员控制台很快就会闪现 JSP 的路径,然后消失。速度太快了,看不到错误。如果没有数据,则发布成功,因为 $.post() 中的 alertHere 函数被正确调用。我不确定我是否遗漏了一些东西。

最佳答案

假设您在服务器端有一个 servlet 来处理从 jsp 页面发送的数据,您可以使用 javascript 创建一个伪类,然后将其解析为 json,最后将其发送到服务器。例如:

JavaScript 和 jQuery

function SomeClass (){
this.field1 = $("#field1").val();
this.oper1 = $("#oper1").val();
this.value1 = $("#value1").val();
// etc. for every field you want to send
}

注意:我假设每个字段都有一个 id。

function alertHere(){
window.alert("Post Successful!")
}

jQuery 和 ajax

$("#someID").click(function(){
event.preventDefault(); <-------- if you replace the submit button for a simple button,
you don't need to do this.
var formData = new SomeClass();

$.ajax({
url:"ServletName",
data: JSON.stringify(formData),
dataType:"json",
}).done(function(response){
alertHere(response);
});

});

html

<input type="submit" value="SEARCH" id="someID" name="submit" class="srchbutton">

关于java - 无法将 JSON 对象提交到 JSP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25370751/

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