Ho un tag apex che genera un campo di testo di input.Come fare riferimento all'ID elemento html specificato in visualforce e passare alla funzione javascript?
<apex:page id="my_page">
<apex:inputText id="foo" id="c_txt"></apex:inputText>
</apex:page>
Quando qualcuno fa clic su questo campo, voglio eseguire javascript.
Ma quando controllo il codice sorgente HTML, questo tag apex che diventa tag di input ha (penso) una parte generata dinamicamente.
<input type="text" size="50" value="Tue Nov 16 00:00:00 GMT 2010"
name="j_id0:j_id3:j_id4:c_txt" id="j_id0:j_id3:j_id4:c_txt">
Come si può vedere ID è spazzatura parte :(
id="j_id0:j_id3:j_id4:c_txt"
Nel mio JavaScript Sto cercando di getElementById('c_txt')
, ma questo non funziona, naturalmente. Come affrontare questo ???
UPDATE
sembra che io possa fare questo, ma non funziona ...
<apex:includeScript value="{!URLFOR($Resource.datepickerjs)}"></apex:includeScript>
<apex:inputText id="foo" id="c_txt" onclick="javascript:displayDatePicker()" />
datepickerjs
var elem = getElementById('c_txt');
alert(elem);
Gli spettacoli alert 'nullo' quindi qualcosa deve essere sbagliato.
Anche questo avviso restituisce null ...
var targetDateField = document.getElementById('{!$Component.my_page:c_txt}');
alert(targetDateField);
Grazie per aver fornito un codice di esempio con uno scenario di tag nidificati! :) –
Stranamente, se il tuo
Problemi correlati