Salve a tutti,
ho un problema: non riesco a collegare l'autocompletamento (ricerca automatica, tramite info salvate su un Database) all'aggiunta dei campi in maniera dinamica:
Vi posto il mio codice:
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<head>
<script src="ajax/prototype.js" type="text/javascript"></script>
<script src="ajax/effects.js" type="text/javascript"></script>
<script src="ajax/controls.js" type="text/javascript"></script>
<title>Dettagli Attività</title>
<style type="text/css">
input{
font-family:Verdana;
font-size:14px;
width:200px;
}
div.campo{
font-family:Verdana;
font-size:14px;
}
div.boxsuggerimenti {
font-family:Verdana;
font-size:14px;
position:absolute;
background-color:white;
border:1px solid #888;
margin:0px;
padding:0px;
}
div.boxsuggerimenti ul {
list-style-type:none;
margin:0px;
padding:0px;
}
div.boxsuggerimenti ul li.selected { background-color: #FF7F50;}
div.boxsuggerimenti ul li {
list-style-type:none;
display:block;
margin:0;
padding:1px;
cursorointer;
border-bottom:1px solid #888;
}
</style>
<?php
header('Content-Type: text/html; charset=UTF-8');
?>
<script type="text/javascript">
// Funzione che permette di aggiungere elementi al form
function AggiungiRiga(n_righe){
var numero_righe = n_righe.value;
var box = document.getElementById('box_righe');
if(isNaN(numero_righe)==true){
box.innerHTML='';
}else{
var righe = "";
// Inserisco una riga ad ogni ciclo
for(i=1; i<=numero_righe; i++){
righe = righe+""+i+") Materiale : <input type='text' id='squadra"+i+" name='squadra"+i+" size='10'/><div id='suggerimenti_squadra' class='boxsuggerimenti'></div><script type='text/javascript'>new Ajax.Autocompleter('squadra"+i+", 'suggerimenti_squadra', 'cercamateriali.php', {minChars: 1})<;/script>
";
}
// Aggiorno il contenuto del box che conterr? gli elementi aggiunti
box.innerHTML=righe;
}
}
</script>
</head>
<body>
<h2>Prova Caricamento Campi Automatici</h2>
<form method="post" action="ciao.php" name="form1">
<table border="0">
<tr><td>Quanti materiali vuoi aggiungere? </td><td><input type="text" name="righe" maxlength="2" onkeyup="AggiungiRiga(this)"/></td></tr>
</table>
<span id='box_righe'>
</span>
<input name='invia' type='submit' style='width:100px; height:40px;' value='Send' />
</form>
</body>
</html>
Molto probabilmente il probema è in questa parte:
righe = righe+""+i+") Materiale : <input type='text' id='squadra"+i+" name='squadra"+i+" size='10'/><div id='suggerimenti_squadra' class='boxsuggerimenti'></div><script type='text/javascript'>new Ajax.Autocompleter('squadra"+i+", 'suggerimenti_squadra', 'cercamateriali.php', {minChars: 1})<;/script>
";
infatti se lo lascio così:
righe = righe+""+i+") Materiale : <input type='text' id='squadra"+i+" name='squadra"+i+" size='10'/>";
Funziona.
Ringrazio chiunque mi dirà dove sbaglio e mi darà maggiori delucidazioni?
Grazie mille