Salve a tutti; ho il seguente problema che non riesco a capire a cosa sia dovuto:
La pagina creata contiene una decina di elementi Div, ognuno con alcuni input field; se scrivo in un campo input e premo invio viene scritto il contenuto del campo input su db.
Gli elementi Div vengono creati uno ad uno allo scroll dell'utente della pagina a parte quelli che servono per avere un contenuto iniziale da consentire lo scroll (generalmente un paio di elementi div) che vengono creati al caricamento della pagina.
Ho infine una funzione jquery che che all'invio scrive il messaggio su db con chiamata ajax.
Il problema è che mentre tutto funziona correttamente per i primi elementi creati al caricamento della pagina(scrivo messaggio nel campo input e premo invio, tutto ok); per gli elementi creati successivamente(quelli creati allo scroll della pagina) non viene riconosciuto il keypress da jquery--nella pagina c'è tutto ma se scrivo il commento nel campo non succede nulla- sembra che l'ultima funzione non venga chiamata!
Di seguito il codice :
codice:
$(document).ready(function() { // fill dom untill scrollBar appears
while ( $('#bodyWrapper').hasnotVerticalScrollBar()){
fillDom_with_next_element();
}
});
codice:
$(document).ready(function(){ //create next element when scroll
$(window).scroll(function() {
if($(window).scrollTop() + $(window).height() == $(document).height()) {
fillDom_with_next_element();
}
});
});
codice:
function fillDom_with_next_element(){
//crea una struttura come questa:
// <div>
//<input type=text id=commento/>
//</div>
}
codice:
$(document).ready (function print_results_others_events() { //write comment when enter is pressed
$("[id=comment]").keypress(function(event) {
var $self = $(this);
var comm = $self.val();
var keycode = (event.keycode ? event.keycode : event.which);
if (keycode == 13) {
//ajax call + write db
}
});
})