reagiert bootstrap readonly Eingabe innerhalb von formcontrol

8

Ich benutze React Bootstrap und dieses Framework bietet einige nette FormControls.

Aber ich möchte das Eingabefeld, das innerhalb der FormControls erzeugt wird, auf readonly="readonly" setzen. Auf diese Weise sieht dieses Feld genauso aus wie meine anderen FormControls, gibt aber keine Tastatureingabe für IOS.

In meinem Fall wird die Eingabe von einer Kalenderauswahl bereitgestellt, die von einem Popover ausgelöst wird.

Weiß jemand, wie man FormControl den Parameter readonly="readonly" gibt, damit das generierte Eingabefeld im Browser die prop readonly="readonly" hat?

Vielen Dank für die Antworten!

    
user3611459 16.05.2016, 12:09
quelle

1 Antwort

21

Es sieht nicht aus wie ein Problem mit react-bootstrap, sondern eher mit react selbst. React überträgt die readonly-Prop nicht an das generierte (echte) DOM-Element:

React-bootstrap erstellt die folgende react virtual dom input:

Dennoch hat react das folgende reale DOM-Element generiert, wobei das Attribut readonly weggelassen wurde:

Vielleicht könnte die Verwendung von 'deaktiviert' in Ihrem Fall helfen:

%Vor%

Für Unterschiede zwischen readonly & amp; disabled siehe hier: Ссылка

Ich habe ein Problem in React's github Repo erstellt: # 6783

AKTUALISIEREN

Nachdem Sie in der obigen Frage eine Antwort erhalten haben. Sie müssen es mit camelcase schreiben: readOnly.

So sollte es sein:

%Vor%     
omerts 16.05.2016, 18:17
quelle