0

これまでのところ、フォーム バインディング (POJO を使用) を使用して、フロント エンドからユーザー入力データをバインドできます。たとえば、バインドできます

<input type="number" name="age" />

次のようにコントローラーでメソッドを作成することにより:

@RequestMapping(value = "/save", method = RequestMethod.POST)
public String save(@RequestParam("age") Integer age) {}

今、私はこのようなものを持っています:

<input type="number" name="yourAge" />
<input type="number" name="myAge" />
<p name="ageDifference"> </p>

yourAgeここでは、とを差し引いて年齢差を簡単に計算する Java スクリプトをいくつか書きました。すると、自動的myAgeに遺言が段落に表示されます。本当にやりたいことは、出力をコントローラーにバインドすることです。私はこのようなことを考えています:ageDifference<p>ageDifference

    @RequestMapping(value = "/save", method = RequestMethod.POST)
    public String save(@RequestParam("ageDifference") Integer ageDifference) {}

しかし、実行すると、Spring がデータをバインドできるとは思えません。これは簡単な質問です。データをデータベースに保存しようとしましたが、HTTP 400 エラーが発生しました。

必須の文字列パラメーター「ageDifference」が存在しません

説明: クライアントから送信されたリクエストは、構文的に正しくありませんでした。

これは実行可能ですか?それとも、ここで完全に間違った方向に進んでいますか?

4

1 に答える 1

0

あなたはそれを隠し変数として作ることができ、それをJavaで取得して変数を隠します。コードを変更するだけです

以下の例を使用して非表示にするには、Java コントローラーでも同じように変更する必要があります。ageDifferencehidden という名前

 <input type="hidden" name="ageDifferencehidden" value=${ageDifference}/>
于 2015-08-20T18:51:10.597 に答える