如何使用 javascript 禁用除按钮之外的所有表单字段


How to disable all form fields except buttons using javascript

我是使用PHP和java脚本进行网页设计的新手。

除了 50 个输入字段外,我的表单中还有"清除"、"查看"、"编辑"、"保存"按钮。

在为关键字段提供值并单击"查看"时,我想从数据库中检索该记录并显示它并使所有字段"仅显示"。单击"编辑"后,所有字段都可以设置为可编辑。

请帮我提供这方面的建议。

我在"查看"按钮的 Onclick 事件上使用了以下函数

 function DisableFields()
        {
        var form = document.getElementById(form id);
        var elements = form.elements;
        for (var i = 0, len = elements.length; i < len; ++i) {
            if (elements[i].type != 'submit') {
                elements[i].disabled  = true;
            }
        }
        } 

正在发生的事情是,字段变得不可编辑,并立即更改回可编辑字段。如果我也禁用了所有按钮,则完全禁用了它。

您发布的代码中的任何内容都不会导致您描述的行为。

我最好的猜测是,您还有其他一些代码,它们通过务实地单击其中一个提交按钮来提交表单,从而导致页面重新加载,此时输入未被禁用。

通过禁用提交按钮,您可以防止这种情况发生。