显示/隐藏多个单选按钮

时间:2013-09-12 18:50:32

标签: javascript html forms

我很擅长用js构建表单。我复制并应用了一些代码来根据我选择的单选按钮弹出字段。这适用于两个单选按钮,但我的问题是我想要包含几个(5+),并希望每次更改都重置字段。

我在想我可以输入额外的代码来重置所有字段“onchange”但是我无法让这段代码工作......这是我为我的用途复制和修改的内容:

按照设计的2个按钮效果很好:

{
  toggleSelectionFields: function() {
      var isLaptop = ca_fdIsSelectRadio('showhide','group','short');
      if (isLaptop) {
        ca_fdHideField('showhide','longfields');
        ca_fdShowField('showhide','shortfields');
      } else {
        ca_fdHideField('showhide','shortfields');
        ca_fdShowField('showhide','longfields');
      }
    }
}

这是我尝试做的事情:

{
    toggleSelectionFields: function() {
        Var discovery = ca_fdIsSelectRadio('phone','deskphone4610','selectproblem','SelectIssue','discovery');
        Var headset = ca_fdIsSelectRadio('phone','deskphone4610','selectproblem','SelectIssue','headset');
        Var fac = ca_fdIsSelectRadio('phone','deskphone4610','selectproblem','SelectIssue','feature');
        Var calls = ca_fdIsSelectRadio('phone','deskphone4610','selectproblem','SelectIssue','calls');
        if (discovery) 
        {ca_fdShowField('phone','deskphone4610','selectproblem','discovermode')}
        if (headset)
        {ca_fdShowField('phone','deskphone4610','selectproblem','headset')} 
        if (fac)
        {ca_fdShowField('phone','deskphone4610','selectproblem','feature')}
        if (calls)
        {ca_fdShowField('phone','deskphone4610','selectproblem','calls')}
        }
    }
}

1 个答案:

答案 0 :(得分:1)

这似乎是一个JavaScript问题(不是Java)并且与特定框架(CA Service Catalog)相关,因此有关如何使用特定CA函数执行操作的问题可能最好在CA Service Management Global User Community消息上得到解答板。

作为一般逻辑/ JavaScript问题,除了显示您想要查看的字段之外,您还需要隐藏您不想看到的字段。请注意,您的第一个示例调用ca_fdHideField隐藏一组字段,然后调用ca_fdShowField以显示另一组字段。如果您不想复制大量代码,可以在if语句之前隐藏所有代码,然后只显示与所选单选按钮对应的代码:

ca_fdHideField(...)
ca_fdHideField(...)
...
if (discovery) {
...
}