相关疑难解决方法(0)

Material-UI Select,单击输入时如何在选择上应用 :focus-within 样式?

我在 div 组件内使用 Select:

<div className="custom-filter custom-filter-data">
            <DateRangeIcon className="search-icon"/>
            <FormControl variant='standard' ref={addrRef} className= 
                {classes.formControl}>                
              <Select
                labelId="demo-simple-select-label"
                id="demo-simple-select"
                defaultValue=""
                onFocus={(e) => {addrRef.current.focus()}}
                displayEmpty
              >
                <MenuItem value="" disabled>
                  Seleziona data
                </MenuItem>
                <MenuItem value={10}>Ten</MenuItem>
                <MenuItem value={20}>Twenty</MenuItem>
                <MenuItem value={30}>Thirty</MenuItem>
              </Select>
            </FormControl>
              //other components
         </div>
Run Code Online (Sandbox Code Playgroud)

CSS容器

.custom-filter:focus-within{
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgb(0 123 255 / 25%);
}
Run Code Online (Sandbox Code Playgroud)

我需要在单击选择输入时触发选择上的焦点,以便利用父容器的 :focus-within 样式。现在父级 :focus-within 仅在 onChange 事件中工作(当我选择 MenuItem 时)。如您所见,我尝试过 useRef() 但不起作用...似乎当用户单击选择的输入时,它会阻止所有其他焦点...

https://codesandbox.io/s/react-material-ui-select-forked-8msbu?file=/src/index.js

javascript reactjs material-ui

3
推荐指数
1
解决办法
8472
查看次数

标签 统计

javascript ×1

material-ui ×1

reactjs ×1