React忽略label元素的'for'属性

问题描述 投票:169回答:5

在React(Facebook的框架)中,我需要使用标准的for属性渲染绑定到文本输入的标签元素。

例如使用以下JSX:

<label for="test">Test</label>
<input type="text" id="test" />

但是,这会导致HTML缺少必需(和标准)for属性:

<label data-reactid=".1.0.0">Test</label>
<input type="text" id="test" data-reactid=".1.0.1">

我究竟做错了什么?

reactjs label
5个回答
354
投票

for属性称为htmlFor,用于与DOM属性API保持一致。如果您正在使用React的开发版本,那么您应该在控制台中看到有关此问题的警告。


10
投票

是的,为了反应,

for for htmlFor class成为className等。

请参阅此处更改HTML属性的完整列表:

https://facebook.github.io/react/docs/dom-elements.html


9
投票

对于React,您必须使用它的per-define关键字来定义html属性。

class - > className

使用和

for - > htmlFor

使用,因为反应是区分大小写,请确保您必须按照要求遵循小额和资本。


2
投票

0
投票

那就是JSX中的htmlFor,而JSX中的类是className

© www.soinside.com 2019 - 2024. All rights reserved.