我目前正在开发一个Lotus Notes解决方案。我们只是使用Web表单,所以客户端操作是通过Javascript完成的。
我想要完成的是重置一组单选按钮。有3种可能性,我不想选择。(“没有”的可能性会更好,我知道,但我们需要重新设置它们)
我目前使用:
//Unchecks a single group of Radio Buttons
//groupname - the name attribute of the group which selection needs to be unchecked
function clearRadioButtonGroup(groupName) {
for(i=0;i<document.forms[0].elements[groupName].length;i++) {
document.forms[0].elements[groupName][i].checked = false;
}
}这个例程的问题是,Radiogroup被重置,但在表单提交上提交的是旧值。有什么建议吗?
发布于 2009-10-24 19:04:56
问题是清除单选按钮不会使提交的表单数据中显示任何关于它们的信息,而Domino似乎将其解释为不更改字段,而不是清除字段。
我还没有找到任何我真正喜欢的解决方案,但我可以想到两个选择:
另一种选择有点笨拙:
onChange事件清除标志字段。WebQueryOpen代理中,如果标志字段不为空,则将单选按钮字段设置为空。<代码>H217<代码>F218另一种选择是使用一些聪明的javascript/css技巧来隐藏无选择选项,并让clearRadioButtonGroup简单地设置该选项。
发布于 2009-10-29 04:50:49
您使用的是哪个版本的Domino?由于7.x (我认为)%%的代理字段是作为HTML中的隐藏字段生成的,因此在取消选择所有单选按钮选项后,您可以清除%%代理字段,这样您就可以避免选择“以上都不是”选项。
哑光
发布于 2009-10-23 04:41:46
您确定实际提交的是旧值吗?也许它只是没有在你正在编辑的NotesDocument中被更新(擦除)?只是预感..。
顺便说一句,您可以下载一个名为Fiddler的程序,该程序允许您检查HTTP POST,并且您可以确认POST数据不包含该单选按钮组的任何值。这可能有助于缩小问题的范围。
https://stackoverflow.com/questions/1609655
复制相似问题