Textbereich – Cursor bewegt sich zum Ende – reagierenHTML

HTML-Programmierer
Guest
 Textbereich – Cursor bewegt sich zum Ende – reagieren

Post by Guest »

Wenn ich etwas in den Textbereich eingebe, funktioniert es einwandfrei. Aber wenn ich versuche, den Cursor zurück zu bewegen, um Text hinzuzufügen/zu bearbeiten, bewegt er sich nach der Eingabe eines Zeichens zum Ende.
Code:

Code: Select all

React.createElement('textarea', {
name: 'SpecialInstruction',
id: 'rad_SpecialInstruction', value: this.props.stateobj.SpecialInstruction,
onFocus: (event) => {

const currentValue = event.target.value;
//event.target.value = currentValue + '.';
//this.handleOrderChange(event); // trigger the onChange event handler
},
onChange: this.handleOrderChange, className: 'form-control', maxLength: 512, style: { fontSize: '12px !important' },
})
)

handleOrderChange-Code:

Code: Select all

_this.handleOrderChange = function (e) {
_this.props.AddModuleState(_defineProperty({}, e.target.name, e.target.value), "RAD");

// Store the current cursor position
const cursorPosition = e.target.selectionStart;

// Prevent the default behavior of the input element
e.preventDefault();

_this.props.AddModuleState(_defineProperty({}, e.target.name, e.target.value), "RAD");

// Restore the cursor position
e.target.setSelectionRange(cursorPosition, cursorPosition);

};
Nachdem ich versucht hatte, diesen Code zu reparieren, habe ich setTimeout eingefügt, e.preventdefault() entfernt und die doppelte AddModuleState-Zeile entfernt, es hat sich verbessert Vieles, aber das Problem bleibt bestehen!
Mein Versuch:

Code: Select all

_this.handleOrderChange = function (e) {
_this.props.AddModuleState(_defineProperty({}, e.target.name, e.target.value), "RAD");

// Store the current cursor position
const cursorPosition = e.target.selectionStart;

setTimeout(() => {
e.target.setSelectionRange(cursorPosition, cursorPosition);
}, 0);
};
Einige Hintergrundinformationen, die hilfreich sein könnten:
  • Dies ist Teil einer Anwendung, bei der Ärzte Tests für Patienten anordnen.
    Der Text dieses Textbereichs soll dort gespeichert bleiben, während wir unsere Bestellung speichern.
  • Wir haben versucht, die gesamte Logik in onChange zu entfernen, es hat funktioniert aber der Text wird nicht im Textbereich gespeichert, nachdem wir versucht haben, unsere Bestellungen zu bearbeiten.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post