在 React 中创建的选择控件不会在浏览器刷新时重置(IE11 和 Edge)

2024-03-24

我有一个非常简单的 React 应用程序,只有一个选择控件。查看工作应用程序here http://www.webpackbin.com/4JyNOWVpW。选择控件有 3 个值:星期日、星期一和星期二。星期日是默认值。不幸的是,在 IE11 和 Microsoft Edge 上,即使在浏览器刷新后,选择控件也会卡在所选值上!例如,选择星期二,然后刷新浏览器 - 选择框不会返回星期日,它会卡在星期二!在 Chrome 和 Safari 上,我没有看到这个问题。 (注意:您必须在各种浏览器上下载并运行该应用程序。)

主要组件的代码如下所示。知道 IE 和 Edge 行为不端的原因吗?

import React from 'react';

class HelloWorld extends React.Component {

  constructor() {
    super();
    this.state = {
      selectedOption: 'sun'
    }
  }

  render() {
    let options = [
      { value: 'sun', label: 'Sunday'  },
      { value: 'mon', label: 'Monday'  },
      { value: 'tue', label: 'Tuesday' }
    ];

    return (
      <select
        className="form-control"
        value={this.state.selectedOption}
        onChange={ e => this.setState({selectedOption: e.target.value}) }>
        {
          options.map(option => {
            return <option value={option.value} key={option.value}>{option.label}</option>;
          })
        }
      </select>
    );
  }

}

export default HelloWorld;

Naresh,你的代码没问题。

Internet Explorer 和 Edge 行为不当,因为它们缓存选择标签。在 Windows 上,按 Ctrl+F5 快捷键进行硬刷新。在 Mac 上,按住 ⌘ Cmd 和 ⇧ Shift 键,然后按 R。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 React 中创建的选择控件不会在浏览器刷新时重置(IE11 和 Edge) 的相关文章

随机推荐

  • React Navigation v5:如何与 Branch.io 一起使用

    我们有一个利用 Branch io 通用链接的应用程序 按照以下文档 https help branch io developers hub docs react native read deep link https help branc
  • 如何使用反射获取对象的属性?

    我知道我能做到 foreach PropertyInfo property in myobject GetType GetProperties if property DeclaringType ToString myobject GetT
  • Cuda 计算模式和“CUBLAS_STATUS_ALLOC_FAILED”

    我的集群中有一台主机 有 8 个Nvidia K80我想将其设置为每个设备最多可以运行 1 个进程 以前 如果我在主机上运行多个作业并且每个作业都使用大量内存 它们都会尝试访问同一设备并失败 我将所有设备设置为计算模式 3 E Proces
  • ActivityThread:找不到源

    我正在开发一个 Android 应用程序来比较两个静态图像 但是当我尝试调试该项目时 我在 ActivityThread 中找不到源代码 这是我的代码 查找器类 package com example testmatching import
  • Laravel 中的 Associate()

    我有 2 个模型 一个用户和一个地址 自从我读到它以来 我仍在尝试 Associate https laravel com docs 5 6 eloquent relationships updating belongs to relati
  • 为Windows应用程序实现webrtc数据通道[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有谁知道如何向用 C 构建的 Windows 应用程序实现 WebRTC DataChannel API 以便在 NAT 后面的客户端
  • Logstash 配置:检查布尔字段是否存在

    使用Logstash 1 4 2 我有一个字段myfield这是我的 JSON 文档中的布尔值 为了检查它是否存在 不关心布尔值 我使用了 if myfield exists else doesn t exist 测试该条件语句的结果是 m
  • 如何将换行符放入 R 中 xtable 的列标题中

    我有一个数据框 我正在将其放入sweave http www stat uni muenchen de leisch Sweave 使用 xtable 的文档 但是我的列名之一很长 我想将其分成两行以节省空间 calqc table lt
  • Weblogic:调用不带架构名称的 DB2 存储过程(属性 currentSchema)

    我有一个在 Weblogic 上运行的 Java 应用程序 应用程序需要访问 DB2 数据库中的存储过程 因此 JDBC 数据源是通过其 JNDI 名称来配置和访问的 数据源 ClassDriver com ibm db2 jcc DB2D
  • XSLT 生成 UUID

    如何使用纯 XSLT 生成 UUID 基本上是寻找一种使用 XSLT 创建独特序列的方法 该序列可以是任意长度 我正在使用 XSLT 2 0 这是一个好例子 http www pure xml com cblog index php arc
  • 如何使用 EPPlus 在 C# 中逐行读取 Excel 文件

    在我的 MVC 控制器中 我试图逐行读取 Excel 但是有一个问题 我希望能够将其映射到列表 模型类包含29个字段 public class GroupMembershipUploadInput public string chpt cd
  • 在 Visual Studio 中发布程序

    我是 Visual Studio 的新手 我正在尝试弄清楚如何 发布 我的程序 以便我可以将其移动到其他计算机并从那里运行它 我不确定这是否有什么不同 但我的解决方案中有三个项目 如果我发布它 我是否仍然能够继续开发原始文件等 多谢 好的
  • 画一条平滑的线

    我正在使用 libgdx 开发游戏 我想使用形状渲染器绘制一条平滑的线条 shaperenderer begin ShapeType Line shaperenderer line fisrstVec2 secondVec2 shapere
  • 如何通过Selenium和WebDriverWait等待元素包含特定属性?

    我有一个关于硒的问题是否有人可以帮忙 我需要进入一个 URL 页面 该页面上的节点最初处于 已注册 状态 X 秒后 其状态将动态更改为 就绪 状态 在其状态转变为 就绪 状态之前 我可能会在 selenium 执行期间继续执行后续步骤 这是
  • 使用 picasso 从 api 加载 recyclerview 中的图像

    使用 picasso 从 api 在 RecyclerView 中添加图像 使用Picasso加载图像非常简单 你可以这样做Picasso get load http i imgur com DvpvklR png into imageVi
  • 根据标签绘制分配颜色

    我确信有一个非常简单的方法可以做到这一点 但我一生都无法弄清楚 我正在 Plot ly 中绘制散点图 我绘制的每个点都被分配了一个标签 例如通过 高 低 西格玛高等 我的问题是我似乎无法修复plot ly 分配给每个标签的颜色 我希望 Pa
  • 将 Mechanize 设置为接受 cookie

    我正在尝试使用 mechanize 从网站检索一些数据以自动搜索公寓 无垃圾邮件 但是 当我向该站点发送请求时 响应具有以下标头 header Cache Control no store no cache max age 0 must r
  • IIS 7.5/Windows Server 2008 上的 PHP 错误日志

    我很困惑应该在运行 IIS 7 5 的 Windows 2008 Server 上寻找包含 php 错误的日志文件 我更熟悉 Mac OS X 的设置 在我的 php ini 文件中 我将 log errors 设置为 On 但我没有在该文
  • 在 CLion 中使用 WSL 工具链时如何启用 Rust 调试?

    我是 Rust 新手 现在在 Windows 上使用 CLion 和 JetBrains 的 Rust 插件 当我刚刚编译并运行时它运行良好 但是当我开始调试时 即使我将工具链切换到 WSL 它也会显示这样的对话框 我想知道 WSL 是否是
  • 在 React 中创建的选择控件不会在浏览器刷新时重置(IE11 和 Edge)

    我有一个非常简单的 React 应用程序 只有一个选择控件 查看工作应用程序here http www webpackbin com 4JyNOWVpW 选择控件有 3 个值 星期日 星期一和星期二 星期日是默认值 不幸的是 在 IE11