Domanda

Ho un regolatore di lista nel mio progetto Dashcode, si tira i suoi dati da una fonte dinamica.

Dopo il mio controller lista ha caricato i suoi dati mi piacerebbe impostare è selezionata indice 0 - così è dimostrato che le informazioni per la prima voce dell'elenco. Non posso per la vita di me a capire come fare questo. Ho provato:

function load()
{
    dashcode.setupParts();
    var list = document.getElementById("itemsList");
    //list.setSelectionIndexes(0); // nope
    //list.selectedIndex = 0; // nope
}
È stato utile?

Soluzione

Non c'è bisogno di scrivere alcun codice per questo. Modificare le proprietà per l'elenco di ispezione e deselezionare consentire la selezione vuota nella scheda attributi. Con nessuna selezione nullo permesso verrà selezionata la prima voce nell'elenco quando la lista carichi.

Altri suggerimenti

Ecco un esempio per la selezione di un elemento specifico in base al suo nome. Per questa domanda, si potrebbe semplicemente impostare in modo esplicito l'indice 0 - Credo che la risposta di Vicente è più appropriato per la domanda posta, ma questo può essere utile per selezionare un elemento basato su un querystring, etc

.
function load()
{
    dashcode.setupParts();

    setSelectedItem();
}

function setSelectedItem()
{
    var itemSource = dashcode.getDataSource("itemsSource");
    var inProgress = itemSource.valueForKey("queryInProgress");

    if(inProgress)
    {
        setTimeout("setSelectedItem()", 200);
    }
    else
    {
        var items = itemSource.valueForKeyPath("content.items")
        for(i=0;i<items.length;i++)
        {
            if(items[i].name.toLowerCase() == "specificItemName")
            {
                document.getElementById("list").object.setSelectionIndexes([i]);
            }
        }
    }
}
function load()
{
    dashcode.setupParts();
    var list = document.getElementById("itemsList");
    list.setSelectionIndexes([0]);
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top