javascript - 在 JSX/React 中通过数组映射后,首先选择 <option> 为空

标签 javascript html reactjs jsx html-select

  render(){

    let { classes } = this.props;

    let list = classes.map((item, index) => {
      return (
        <option >{item}</option>
      )
    })


    return(
      <div className="filter-bar">

        <form className="sort-form">
          <div className="classSelect">
            <span>select class</span>
              <select name="classSelect" onChange={this.handleClassChange}}>
                <option selected="selected"  >Please choose class</option>
                {list}
              </select>
          </div>
        </form>
      </div>
    )
  }
};

我想映射一个数组并将每个元素用作选择下拉列表中的选项,并且还有一个额外的空白选项,该选项默认为单击下拉列表。

目前,我拥有的额外内容可在列表中使用,但默认值始终是数组中的第一个元素,而我希望默认值是“请选择您的类(class)”

谁能解释一下吗?

最佳答案

  render(){

const classes = [
  'Lorem',
  'Ipsum',
  'dolor',
  'Sit',
  'ames'
]

let list = classes.map((item, index) => {
  return (
    <option >{item}</option>
  )
})


return(
  <div className="filter-bar">
    <form className="sort-form">
      <div className="classSelect">
        <span>select class</span>
          <select name="classSelect" onChange={this.handleClassChange.bind(this)} defaultValue="none">
            <option value="none" disabled hidden> 
            </option> 
            {list}
          </select>
      </div>
    </form>
  </div>
)

您可以使用 disabledhidden <option>值(value)"none" 。而不是使用 selected属性,然后您应该使用 defaultValue="none"在父级 <select>符合现代 react 要求。

关于javascript - 在 JSX/React 中通过数组映射后,首先选择 <option> 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58608436/

相关文章:

javascript - 如何创建一般消息

html - Bootstrap 3 Navbar——导航栏的折叠属性问题

javascript - react : set width of a div to be the width of an image

javascript - 如何在包含堆积面积图的 highstock (highcharts) 上制作多 Pane ?

javascript - 如何使用注入(inject)的 JavaScript 将 UIWebView 滚动到一个点

javascript - 使用图片上传的django动态背景

java - 不隐藏\显示 Mustache 模板语言中的几个字段

css - 模块构建失败(来自 ./node_modules/css-loader/dist/cjs.js): CssSyntaxError

javascript - 使用 react-d3-components 包的 D3 水平条形图

JavaScript - 在不使用 CSS 文件和样式标签的情况下获取 HTML 文件中元素的大小?