当前位置: 首页 > 知识库问答 >
问题:

页面刷新时受控输入不清楚(Microsoft Edge)

史骏
2023-03-14

我有一个ReactJS应用程序,并使用一个简单的html标记创建了一个受控组件。

问题是,当在microsoft edge中从刷新按钮或按F5时(从navbar进行enter操作很好),输入值不能正确地清除,它们会被卡住。如果我开始输入表单的任何输入,那么它们就会消失。

我已经尝试过:

-清除windows.onload上的值
-在输入标记上设置autocomplete='off'
-创建超时函数

为了测试,我到处添加了console.logs,以确保调用了所有的生命周期方法,并且每个方法中的状态都是空的,实际上是空的。

我还看到了这篇文章:https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/21174802/

但这些似乎都没有解决这个问题。

<input
  id={`input-${id}`}
  key={`input-${id}`}
  type={inputType}
  value={value}
  autoComplete="off"
  onChange={this.handleValueChange}
/>

共有1个答案

凌和颂
2023-03-14

Internet Explorer和Edge正在缓存输入标记。在Windows上,按Ctrl+F5快捷方式进行硬刷新。但对我来说,我按Ctrl+双击F5在边缘,然后它刷新。你也可以参考这个线程。

 类似资料:
  • 当我尝试重新绘制透明窗口并在其上绘制矩形时,之前的矩形将保留。目标是通过单击并移动鼠标在屏幕上选择一个区域。如果你移动鼠标一会儿,它会看起来像这样 通过去除透明度,效果很好。 我尝试了在Stack Overflow上找到的关于这个主题的所有内容,但我无法让它在Windows和Linux上运行。 谢谢:)

  • 我的HTML如下所示: 然后,在我的剧本的开头,有这样的内容: 这在Firefox中运行良好;刷新页时,值清空并清除字段。 最后,如果我以任何方式编辑源代码,然后在Edge中重新加载页面,它将清空实际值并清除字段,但仅在初始重新加载时清空。之后,问题依然存在。这让我怀疑这是否是缓存问题。 有什么帮助或建议吗?

  • 我正在使用php和javascript进行网络编程,这是我想问的一个一般性问题,通常在页面刷新时,文本区域或输入中的所有内容都会被删除; 是否有办法保留用户输入、键入的字符或复选框?不保存到会话中?还是我真的需要保存它?非常感谢。 (我不是说表单提交导致重新加载,但只是简单地键入文本区域,然后按下刷新按钮。)

  • 不更新输入字段的组件本身 This.SetState正在清除状态中的currentValue,但输入字段的值没有反映状态中的更新

  • 问题内容: 我有一个文件,其中我在页面顶部显示外部页面(使用iframe),其他部分是写在文件中的html代码的输出。 HTML代码如下所示: 现在,我想以编程方式刷新页面而不刷新。 我的问题是我可以不刷新页面就刷新页面吗? 答案/提示将不胜感激。 问题答案: 该嵌在主HMTL页面(或在JSP)。因此,如果刷新页面,则肯定会再次加载iframe。 为了避免这种情况,我可以考虑以下两种选择: 使用A