Ti ringrazio sei molto gentile ma non riesco a fare quello che vorrei, ti chiedo un'ultimo aiuto se proprio nn ce la faccio cambierò strada...
Io ho due campi di testo dove su entrambi c'è l'autocompletamento in jquery.
Se scrivo "manualmente" le due funzioni javascript la cosa mi funziona se le scrivo "dinamiche" (come vorrei perchè i campi di testo possono essere 2,3,4... n) non riesco a farlo funzionare.
Questo il codice "manuale":
codice:
<script>
$(function() {
$(".nomeclasse").autocomplete(
{
source:
function(request, response) {
$.ajax({
url: "/pagina-chiamata.asp",
dataType: "json",
data: {
term : request.term,
mode : "TBL_DB",
field: #idinputtext1
},
success: function(data) {
response(data);
}
});
},
minLength: 1,
delay: 700,
select: function( event, ui ) {
$("#idinputtext1").val( "[" + ui.item.label + "] " + ui.item.actor );
return false;
}
}).data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>[<strong>" + item.label + "</strong>] " + item.actor + "</a>" )
.appendTo( ul );
};
});
$(function() {
$(".nomeclasse").autocomplete(
{
source:
function(request, response) {
$.ajax({
url: "/pagina-chiamata.asp",
dataType: "json",
data: {
term : request.term,
mode : "TBL_DB",
field: #idinputtext2
},
success: function(data) {
response(data);
}
});
},
minLength: 1,
delay: 700,
select: function( event, ui ) {
$("#idinputtext2").val( "[" + ui.item.label + "] " + ui.item.actor );
return false;
}
}).data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>[<strong>" + item.label + "</strong>] " + item.actor + "</a>" )
.appendTo( ul );
};
});
</script>
....
....
....
Input Text: <input name="idinputtext1" type="text" id="idinputtext1" class="nomeclasse" />
<br /><br />
Input Text: <input name="idinputtext2" type="text" id="idinputtext2" class="nomeclasse" />
io vorrei scrivere una "cosa" del genere (che ovviamente adesso non funziona)
codice:
<script>
$(function() {
$(".nomeclasse").autocomplete(
{
source:
function(request, response) {
$.ajax({
url: "/pagina-chiamata.asp",
dataType: "json",
data: {
term : request.term,
mode : "TBL_DB",
field: this.attr('id')
},
success: function(data) {
response(data);
}
});
},
minLength: 1,
delay: 700,
select: function( event, ui ) {
$(this).attr('id').val( "[" + ui.item.label + "] " + ui.item.actor );
// $(this).val( "[" + ui.item.label + "] " + ui.item.actor );
return false;
}
}).data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>[<strong>" + item.label + "</strong>] " + item.actor + "</a>" )
.appendTo( ul );
};
});
</script>
....
....
....
Input Text: <input name="idinputtext1" type="text" id="idinputtext1" class="nomeclasse" />
<br /><br />
Input Text: <input name="idinputtext2" type="text" id="idinputtext2" class="nomeclasse" />
In pratica recuperare il nome dell'id del campo di testo (perchè anche quel nome contiene variabili) quando è selezionata la classe dell'autocompletamento....
dove sbaglio?
ciao e grazie ancora