gpt4 book ai didi

javascript - 使用 Struts 1.3 更改 javascript 中表单属性的值

转载 作者:行者123 更新时间:2023-11-28 08:01:44 25 4
gpt4 key购买 nike

我有一个问题,但我不知道如何解决。我想在 JavaScript 中更改表单的属性。我是这样做的:

$(document).ready(function() {

$("#submitCheckbox").click(function() {
if($('#abc').prop('checked')==false){
$('#abc').val(false);
var a;
a=$('#abc').val();
alert(a);
}
});
});

我的JSP:(这只是一部分,它在表单中)

<html:checkbox property="abc" value="1" styleId="abc" />
<bean:message key="label.form.abc" />

<html:submit styleClass="btn btn-primary" styleId="submitCheckbox">
<bean:message key="button.continue" />
</html:submit>

在我的操作中,我有(abc是表单中的一个属性,它有getter和setter,并正确发送值1):

System.out.println(registration.isAbc());

好的,所以当我选中一个复选框时,它将 abc 值设置为 1(true)。但是,当我转到下一页,然后返回到带有复选框的页面时,我取消选中之前选中的页面,我希望将其值设置为零/假。 Java 脚本警报显示该值等于 false(所以我认为它发生了变化),但是当我转到下一页时它仍然等于 true(所以它没有改变)。

那么,如何更改 java 脚本中 form 属性的值,以便表单记住它?

最佳答案

您可以添加隐藏字段来保存未选中的值

<html:hidden property="abc_unchecked"/>

具有相同的属性类型和值,例如abc,但名称不同。现在,当复选框更改状态时,JavaScript 应该修改其值。

<script type="text/javascript">
$(document).ready(function() {
$("#abc").change(function() {
if($("#abc").prop("checked")==false){
$("#abc_unchecked").val(false);
var a;
a=$("#abc_unchecked").val();
alert(a);
} else {
$("#abc_unchecked").val(true);
var a;
a=$("#abc_unchecked").val();
alert(a);
}
});
});
</script>

然后在验证之前的操作或表单中,您应该检查未检查的值

if (isAbc_unchecked()) 
setAbc(false);
} else {
if(!isAbc()){
setAbc(true);
}
}

关于javascript - 使用 Struts 1.3 更改 javascript 中表单属性的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25303504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com