Non so, sta di fatto che se quell'elemento non ha un id è inutile che usi getElementById. L'unica cosa che mi viene da pensare è che l'id sia rimosso dain realtà il template indica come id di quella textarea "ui8sajnc8c9" anche se poi analizzandolo tramite firefox non appare accanto a textarea
Il metodo querySelector() ti permette di selezionare un elemento usando un selettore (o una combinazione di selettori) proprio come si fa con il CSS.
Qui un esempio, testato e funzionante, in base al codice e alle indicazioni che hai fornito finora:
.codice:<!DOCTYPE HTML> <html lang="it"> <head> <title>Esempio</title> <meta charset="utf-8"> </head> <body> <form> <div id="rockfm_ui8sajnc8c9" data-idfield="ui8sajnc8c9" data-typefield="7" class="rockfm-textarea rockfm-field "> <div class="rockfm-field-wrap "> <div class="rkfm-row"> <div class="rkfm-col-sm-12"> <div class="rockfm-input-container"> <textarea placeholder="Aggiungi altri:" class="rockfm-txtbox-inp-val sfdc-form-control" data-uifm-tabnum="0" name="uiform_fields[ui8sajnc8c9]"></textarea> </div> </div> </div> </div> <!-- hidden data --> <div class="rockfm-fld-data-hidden" style="display:none;"> <div class="rockfm-fld-data-field_name">textarea7201</div> </div> <!--/ hidden data --> </div> <p id="result"></p> </form> <script> var textarea = document.querySelector('#rockfm_ui8sajnc8c9 .rockfm-txtbox-inp-val'); var p_result = document.querySelector('#result'); textarea.addEventListener('input', aggiornaSegnaposto); function aggiornaSegnaposto(){ p_result.innerHTML = 'Il signor '+ textarea.value + ' ecc...'; } aggiornaSegnaposto(); </script> </body> </html>
Fai giusto attenzione che per usare i metodi di selezione (querySelector o getElementById o quello che è ) di norma gli elementi che vuoi selezionare devono esistere sulla pagina nel momento in cui tale script viene eseguito.
Fai qualche prova e fai sapere. Se non dovesse funzionare sarebbe utile (se non necessario) vedere la pagina in azione per capire cosa avviene esattamente; in tal caso posta un link, se possibile.


Rispondi quotando