专用的提交按钮,使用相同的servlet将表单数据单独保存到数据库

时间:2015-01-19 09:37:05

标签: javascript jsp

我有一个jsp表单,显示为用户的数据输入屏幕。表格上有2个输入。其中一个输入字段的数据' A'根据组合选择输入。其他输入是简单的输入字段' B'有两个提交按钮,一个保存字段的值' A'。和其他领域' B'。

问题是何时输入了数据' B'如果“A'”的提交按钮单击,页面刷新,输入的数据为' A'保存在db中(按预期工作)。但是,输入的值为' B'提交后因页面刷新而丢失。

我的问题是如何避免重置提交的' B'提交' A'。

的价值观

1 个答案:

答案 0 :(得分:1)

我建议使用以下三种方法之一:

1)将两个值发送到servlet,并在返回时传回请求范围中的B值,如下所示:

您的

中将有以下行
request.setAttribute("bFieldValue", bFieldValue);

然后在JSP中,您可以使用下面的表达式语言

访问此数据
${accountList}

2)将值存储在本地存储(HTML5)

localStorage.setItem("fieldBValue", value);

然后在刷新时检索:

document.getElementById("fieldB").innerHTML = localStorage.getItem("fieldBValue");

3)AJAX请求(Sid建议)

您可以使用jQuery AJAX仅提交表单 - 这会停止页面刷新,因此非常理想。像这样:

$("#formB").ajax( {
    type: "POST",
    url: '/endpoint'
    data: formB.serialize(),
    success: function(response){  

    },
    error: function(XMLHttpRequest, textStatus, errorThrown) { 

    }         
} );    

并提交表格,以触发上述JS:

$("#formB").submit(); //Submit  the FORM