我有以下表格
<form:form id="form" name="form" target="dummyHiddenForm" method="post" commandName="myForm" >
<span class="container">
<label>TestKey</label>
<span class="container-right">
<form:input path="key" id="key" cssClass="text" maxlength="200" cssStyle="width:60%" disabled="true"/>
<input type="button" class="refreshIcon" style="width:auto;" onclick="javascript:refreshKey()" />
</span>
</span>
<span style="width:auto; padding-left: 30%; padding-bottom: 4%; text-align:center; float:right; clear:both;">
<input type="button" class="button" style="width:auto;" value="Submit" onclick="javascript:submitForm()"/>
</span>
</form:form>
<iframe id="dummyHiddenForm" name="dummyHiddenForm" style="display:none;" ></iframe>
在包含表单的上述页面的 GET 请求中,我为对象 myForm 的每个变量设置了一些默认值,并key
设置为 value ""
。我的 refreshKey() 的 java 脚本函数是
function refreshKey(){
document.getElementById('key').value = generateKey() ;
}
此方法正常工作,并且 onclick 在输入文本字段中设置新键。
单击提交按钮我正在使用 java 脚本提交表单
function submitForm(){
var formVar = document.forms["form"];
formVar.action = "/test.htm";
formVar.submit();
}
但是在我的控制器中""
,无论输入字段的实际值如何,我都会为键获得相同的默认值。
我尝试使用 javascript alert
,.value
我可以看到更改的值,但实际 DOM 中的值没有更改(至少当我从 firefox 检查元素时它仍然显示value=""
)。
我需要在提交表单时获取更改的值。有什么建议吗?