Javascript 如何设置下拉菜单的显示大小?
我想将下拉列表的显示大小设置为仅显示5个值,然后在React js中应用滚动 前Javascript 如何设置下拉菜单的显示大小?,javascript,reactjs,material-design,Javascript,Reactjs,Material Design,我想将下拉列表的显示大小设置为仅显示5个值,然后在React js中应用滚动 前 1. 2. 3. 4. 5. 6. 7. 8. 9 10 这适用于正常的HTML格式。我想让它和React js一起工作。那么有可能实现这一点吗 1. 2. 3. 4. 5. 6. 7. 8. 9 10 您可以使用react bootstrap并通过为元素应用fixed高度来创建可滚动的下拉列表。下拉菜单元素并设置overflow-y:scroll 比如说 import React, { Component
1.
2.
3.
4.
5.
6.
7.
8.
9
10
这适用于正常的HTML格式。我想让它和React js一起工作。那么有可能实现这一点吗
1.
2.
3.
4.
5.
6.
7.
8.
9
10
您可以使用react bootstrap
并通过为元素应用fixed
高度来创建可滚动的下拉列表。下拉菜单
元素并设置overflow-y:scroll代码>
比如说
import React, { Component } from 'react'
import { DropdownButton, MenuItem } from 'react-bootstrap'
import './QuantityInput.css'
export default class ScrollableDrop extends Component {
render() {
return (
<DropdownButton
bsStyle="default"
bsSize="small"
style={{ maxHeight: "28px" }}
title={"Qty"}
key={1}
id="dropdown-size-small"
>
<MenuItem eventKey="1">Action</MenuItem>
<MenuItem eventKey="2">Another action</MenuItem>
<MenuItem eventKey="3" active>
Active Item
</MenuItem>
<MenuItem eventKey="4">Separated link</MenuItem>
</DropdownButton>
)
}
}
或
您可能想实现自定义下拉列表,在滚动条上加载
您可以使用react bootstrap
并通过为元素应用fixed
高度来创建可滚动的下拉列表。下拉菜单
元素并设置overflow-y:scroll代码>
比如说
import React, { Component } from 'react'
import { DropdownButton, MenuItem } from 'react-bootstrap'
import './QuantityInput.css'
export default class ScrollableDrop extends Component {
render() {
return (
<DropdownButton
bsStyle="default"
bsSize="small"
style={{ maxHeight: "28px" }}
title={"Qty"}
key={1}
id="dropdown-size-small"
>
<MenuItem eventKey="1">Action</MenuItem>
<MenuItem eventKey="2">Another action</MenuItem>
<MenuItem eventKey="3" active>
Active Item
</MenuItem>
<MenuItem eventKey="4">Separated link</MenuItem>
</DropdownButton>
)
}
}
或
您可能想实现自定义下拉列表,在滚动条上加载
试试这个
onFocus={(e)=>{e.target.size = 5}}
其他字母也一样,请确保on
之后的第一个字母为大写。但我认为如果你建立这样一个国家会更好
this.state = {
size: 1
}
然后将“选择”标记更改为
<select size={this.state.size} onFocus={()=>{this.setState({size: 5})}} onBlur={()=>{this.setState({size: 1})}} onChange={(e)=>{e.target.blur()}}>
{this.setState({size:5}}}onBlur={()=>{this.setState({size:1}}}}onChange={(e)=>{e.target.blur()}>
这是你的建议试试这个
onFocus={(e)=>{e.target.size = 5}}
其他字母也一样,请确保on
之后的第一个字母为大写。但我认为如果你建立这样一个国家会更好
this.state = {
size: 1
}
然后将“选择”标记更改为
<select size={this.state.size} onFocus={()=>{this.setState({size: 5})}} onBlur={()=>{this.setState({size: 1})}} onChange={(e)=>{e.target.blur()}}>
{this.setState({size:5}}}onBlur={()=>{this.setState({size:1}}}}onChange={(e)=>{e.target.blur()}>
这是这工作不正常。size属性默认显示五条记录。另外,在更改后,它会显示一些值的所有10。签入@parth这对您的代码段也是一样的,因为在您单击select标记外部之前,onblur
不起作用,所以焦点不起作用,因为它已经聚焦。等一下,我会修改我的回答,现在好像行了。你的回答是正确的。你还可以帮助使用it材料设计吗?它的打开速度只有40px@对不起,我不知道怎么做。但是我认为你不应该在材料设计中使用size
。使用你自己的css样式,这是不正常的。size属性默认显示五条记录。另外,在更改后,它会显示一些值的所有10。签入@parth这对您的代码段也是一样的,因为在您单击select标记外部之前,onblur
不起作用,所以焦点不起作用,因为它已经聚焦。等一下,我会修改我的回答,现在好像行了。你的回答是正确的。你还可以帮助使用it材料设计吗?它的打开速度只有40px@对不起,我不知道怎么做。但是我认为你不应该在材料设计中使用size
。使用你自己的css样式,我不想使用任何库。我只想通过简单的下拉菜单来实现这一点。@parth因此,您可以简单地按照我提供的第二个链接进行操作。我不想使用任何库。我只想通过简单的下拉菜单来实现这一点。@parth因此,您可以简单地按照我提供的第二个链接进行操作。