【问题标题】:Function to hide form fields from external script从外部脚本隐藏表单字段的功能
【发布时间】:2022-01-13 18:35:53
【问题描述】:

我正在使用一个网页,其中包含使用命令“script src”加载的外部脚本的表单。

我创建了一个函数来从 url 参数填充一些字段并隐藏其中一些。

这里是代码。

<script type="text/javascript">
<!-- Hide Form Field -->
function hideFormField(name) {
    var list = document.getElementsByName(name);
    for (i = 0; i < list.length; i++) {
      list[i].style.display = 'none';
      list[i].style.visible = 'false';
      list[i].type = 'hidden';
    }
}
<!-- Customize form -->
function CustomizeForm()
{
  // Set Field Value
  hideFormField('custom_11');
  hideFormField('custom_12');
  hideFormField('custom_13');
  hideFormField('custom_14'); 
  hideFormField('custom_15');
}
// call it
CustomizeForm();
</script>

字段已填充但未隐藏。

当我调试时,表单字段似乎会短暂消失,但随后又会重新出现。

之后好像正在刷新表单。

  1. 要隐藏字段,哪个特定命令最好,我应该使用这三个命令中的哪一个?我分别尝试过,但似乎没有解决我的问题。
field.style.display = 'none';
field.style.visible = 'false';
field.type = 'hidden';
  1. 我应该在哪里调用函数来隐藏字段?

  2. 假设我无法控制代码在我的设计器中的确切添加位置(仅在哪个部分:页眉、正文或页脚),是否还有另一种每次都可以使用的替代方法?例如,我可以附加到在所有加载和刷新完成后可能被调用的事件(哪个)。

  3. 我能否以某种方式调试或跟踪正在发生的事情以及这些字段为何再次出现?

提前谢谢你!

【问题讨论】:

    标签: javascript forms events field hidden-field


    【解决方案1】:

    这是可见性而不是可见,试试:

    list[i].style.visibility = "hidden";
    

    【讨论】:

    • 好的,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2023-03-26
    • 2010-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多