0

假设我有表格:

<form method="POST" action="JAVA-METHOD-NAME(foo)>
  <input type="text" name="foo"/>
  <button type="submit"/>
</form>

我将如何创建一个 Java 函数来获取 foo 中的文本并对其进行处理?

4

1 回答 1

0

简短的回答

您不能在视图中调用 Java 方法,但是您可以解决这个问题。

长答案

除非我弄错了,否则视图似乎不知道它们的相关 Java 类。从Java(即服务器端),您可以将数据传递给视图。从视图中,您可以使用表单和 url 将数据传递到服务器端。

解决方案

POST到一个 url,然后在 Java 代码中获取被POST编辑的数据。

你的表格:

<form method="POST" action="/example">
   <input type="text" name="foo"/>
   <button type="submit"/>
</form>

您对应的 JavaPOST方法:

post("/example", (request, response) -> {
     // Get foo then call your Java method
    String foo = request.queryParams("foo");
    someMethod(foo);
}

使用 JavaScript 的替代解决方案

使用 JavaScript 做一些处理。请注意,任何 JavaScript 也将与视图一起在客户端上执行,因此无论如何您可能不得不在某种意义上使用上述实现

<form method="POST" action="action="javascript:handleIt()">
    <input type="text" id="foo" name="foo"/>
    <button type="submit"/>
</form>
...
<script type="text/javascript">
    function handleIt() {
       var foo = document.getElementById('foo').value;
       // Now send foo to server side by POSTing to
       // a URL
    }
</script>
于 2015-11-21T00:24:56.253 回答