Java Spring表单更改了ModelAttribute中未反映的值

Java Spring表单更改了ModelAttribute中未反映的值,java,javascript,spring-mvc,modelattribute,spring-form,Java,Javascript,Spring Mvc,Modelattribute,Spring Form,我有以下表格 <form:form id="form" name="form" target="dummyHiddenForm" method="post" commandName="myForm" > <span class="container"> <label>TestKey</label> <span class="container-righ

我有以下表格

<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>
此方法正确工作,onclick在输入文本字段中设置新键

单击submit按钮,我将使用java脚本提交表单

function submitForm(){
        var formVar = document.forms["form"];
        formVar.action = "/test.htm";
        formVar.submit();
}
但在我的控制器中,无论输入字段的实际值如何,我都会为键获得相同的默认值

我尝试使用javascript
alert
.value
我可以看到更改的值,但实际DOM中的值没有更改(至少当我检查firefox中的元素时,它仍然显示
value=”“


我需要在提交表单时获取更改的值。有什么问题吗?

找到了解决办法。问题是由禁用的属性引起的,即
disabled=“true”
。尽管java脚本具有访问权限,可以修改输入的
属性,但在提交spring表单时不会反映出来。一开始我就怀疑模型属性绑定没有问题。在禁用属性关闭的情况下工作正常

但是,如果仍要使输入字段不可编辑,则可以将另一个属性设置为true。使用javascript更改该值,该值将反映回表单提交的model属性中

<form:input path="key" id="key" cssClass="text" maxlength="200" cssStyle="width:60%" readonly="true"/>

<form:input path="key" id="key" cssClass="text" maxlength="200" cssStyle="width:60%" readonly="true"/>