数行のJavaScriptで非表示の入力値を設定してから、フォームを送信しています。値は正しく設定されているようですが、コントローラーによって読み取られません。
更新しようとすると、値が読み取られます...
これはコードです(非常に単純で、同じコードを別のjspで使用しています):
<form:input path="id" type="hidden" id="id" value="0" />
これは私が関数を呼び出す方法です<td>
onclick="return setId('${us.id}');"
これは関数です:
function setId(id) {
document.getElementById('id').value = id;
document.forms["myForm"].submit();
return true;
}
Chromeを使用すると、値が設定されていることがわかります。そのため、サーバーがすぐに値を受け取らない理由がわかりません。更新する必要があります。また、リターンを削除したり、呼び出す関数をもう1つ作成したり、その他の奇妙なことを試みたりしました。
SpringでJavaを使用しています。
編集:
コントローラを変更するボタンをクリックすると、問題が発生する可能性がありますか?
私はcontroller1で調査を行っており、変更するユーザーを選択してクリックし、変更のためにcontroller2にリダイレクトしています。
EDIT2:
問題は春のようです。リクエストから値を取得しようとしましたが、そこにあるようです。今のところ、私はそれをこのようにバイパスしています。
request.getParameter("id")
この動作に関する提案はありますか?