目标: 我们有一个查看页面-> index.html(由javascript函数组成) 我们有一个弹簧启动控制器类。
我们在网络浏览器中触发localhost:port,服务器捕获URL并通过控制器类,我们接收到该触发器并执行一个仅显示网页的函数(如上所述,index.html)。
现在,在Web浏览器中显示index.html页面之后,我们通过index.html文件中定义的按钮(使用javascript)触发了许多功能。考虑一下我们在index.html页面中有一个文本框,在其中我们生成少量文本数据。
问题: 目的是通过后端技术将上述文本框中的数据保存到数据库中。如何将文本框中的数据传递到控制器类(可能是)。
index.html:
<html>
<body>
<script type="text/javascript">
//definition of save()
</script>
<button id="btnNew" onclick="new()">New</button>
<button id="btnSave" onclick="save()">Save</button>
<input style="width: 300px" type="text" id="textBox" value=""/>
</body>
</html>
控制器类:
@Controller
public class WelcomeController {
private String input;
@GetMapping("/")
public String main(Model model) {
this.input= retrieveInputParameters();
model.addAttribute("token", this.input);
return "index"; //view
}
}
代码说明:
控制器类:如上所述,当前控制器类只有1个方法main,当服务器被点击时会触发该方法: http://localhost:8080
该方法检索输入参数,然后呈现index.html页面。
index.html:它由具有多个功能的多个按钮组成。单击“保存”按钮后,它将触发第三方URL并检索数据(该数据与运行它的服务器没有连接)。现在,我们希望在服务器(控制器类)中检索数据。
任何建议都会有所帮助。
答案 0 :(得分:0)
我们可以通过Ajax将数据从视图发送到控制器:
例如:
$.ajax({
type:"POST",
contentType : 'application/xml; charset=utf-8',
dataType : 'json',
url: "/xyz",
data: document.getElementById('abc').value,
success:function(result){
}
});