Domanda

sto cercando di implementare il plugin jQuery completamento automatico. Ho installato e funzionante, ma qualcosa non funziona correttamente.

In sostanza ho un completamento automatico-elenco di dipendenti. L'elenco viene generato da una tabella di un database SQL (employee_names e employee_id), utilizzando un gestore di VB.NET (file Ashx). I dati è formattato come: NOME_DIPENDENTE-employee_id. Fin qui tutto bene e tutti i dipendenti sono elencati in completamento automatico.

Il problema è che non so come reindirizzare un utente a una determinata pagina (ad esempio employee_profile.aspx) quando hanno scelto un dipendente dal completamento automatico.

Questo è il mio reindirizzamento-codice, ma non funziona come dovrebbe:

$('#fname2').result(function(event, data, formatted) {
        location.href = "employee_profile.aspx?id=" + data
});

Per esempio; un utente seleziona Sarà reindirizzare un utente a employee_profile.aspx id = nome del dipendente-id di dipendente ? (Ad esempio:? Employee_profile.aspx id = John Doe-91210) al posto di employee_profile.aspx id = 91210? .

So che posso spogliare l'Employee_ID con:

formatResult: function(data, value) {
   return value.split("-")[1];
   }   
});

Ma non so come passare che employee_id alla redirect-page ..

Ecco tutto il mio codice:

$().ready(function() {

        $("#fname2").autocomplete("AutocompleteData.ashx", {
            minChars: 3,
            selectFirst: false,
            formatItem: function(data, i, n, value) {
            return value.split("-")[0];
            },
            //Not used, just for splitting employee_ID
            //formatResult: function(data, value) {
            //   return value.split("-")[1];
            //}  
            });

            $('#fname2').result(function(event, data, formatted) {
            location.href = "employee_profile.aspx?id=" + data
            });

    });

Lo so che sono molto vicino e dovrebbe essere qualcosa di molto semplice, ma qualcuno mi può aiutare?

Modifica

Ciò ha risolto per me: formatted.split invece di data.split. Codice:

$('#fname3').result(function(event, data, formatted) {
            var employeeId = formatted.split("-")[1];
            location.href = "employee_profile.aspx?id=" + employeeId
});
È stato utile?

Soluzione

Stai dicendo che che sta destinando con successo, ma piuttosto che andare a ...

employee_profile.aspx? Id = 91210

Si sta per ...

employee_profile.aspx? Id = John Doe-91210 ??

Se questo è il caso ... allora si può semplicemente eseguire il vostro striping all'interno della vostra funzione di risultato ...

$('#fname2').result(function(event, data, formatted) {
        var employeeId = data.split("-")[1];
        location.href = "employee_profile.aspx?id=" + employeeId
 });

Altri suggerimenti

Credo location.href dovrebbe essere window.location

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top