Visualizzazione dei risultati da 1 a 6 su 6

Discussione: recuperare item()

  1. #1

    recuperare item()

    http://pro.html.it/articoli/id_232/i...pag_3/pag.html
    in questo articolo si fa riferimento al numero di elemento all'interno di un pagina html partendo dal suo name con getElementByTagName come sotto riportato

    "Passiamo ora a manipolare alcuni attributi della sottostante immagine. Utilizzeremo l'item numero 44 perché l'immagine che vedete sotto è la numero 45 dell'intera pagina (il primo item è equivalente a 0):"

    volevo sapere se era possibile recuperare il numero di item (senza doverlo contare a manina naturalmente) e se si come
    mi spiego
    all'interno di un form ho molte voci ('pubblica') sto scrivendo una function javascript che sull'onChange disattiva questo campo ma ho bisogno di recuperarne il numero di item () all'iterno della pagina per poterlo fare
    qualcuno sa come?
    grazie a tutti
    Marco

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Occorre sapere in che momento ti serve l'informazione... il metodo principale consiste nello scorrere l'intera collezione e confrontare l'oggetto i-esimo con quello attuale... per esempio:

    function indice(obj) {
    var rv = -1;
    var i = 0;
    while (document.getElementsByTagName('IMG').item(i)) {
    if(document.getElementsByTagName('IMG').item(i)==o bj)
    rv = i;
    i += 1;
    }
    return rv;
    }

    da richiamare per esempio con:

    <img ... onclick="alert('img n.'+indice(this));">

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    ciao BR1
    purtroppo non funziona
    mi restituisce sempre -1 (img n -1)
    non capisco con "this" che parametro viene passato alla funzione
    probabilmente non il numero corretto

    grazie
    Marco

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Nell'esempio che ti ho creato this rappresenta l'oggetto chiamante... nel caso specifico e' un'immagine della quale viene fornito, in risposta, l'indice cercato.

    Non e' sufficiente dire "non funziona" per essere aiutati... ti ho postato un esempio funzionante, occorre verificare come l'hai adattato alle tue esigenze :master:

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    si scusami
    ecco l'esempio adattato alle mie esigenze

    function indice(obj) {
    var rv = -1;
    var i = 0;
    while (document.getElementsByName('pubblica').item(i)) {
    if(document.getElementsByName('pubblica').item(i)= =obj)
    rv = i;
    i += 1;
    }
    return rv;
    ecc ecc
    }
    nella pagina
    pubblica è una checkbox
    <input type="checkbox" if RS("pubblica")=true then response.write "checked" end if%> name="pubblica" value="1" onChange="indice(this);">


    in questo caso come ti dicevo mi restituisce -1
    dove sbaglio?
    grazie mille

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Il checkbox non genera un evento onchange... prova con onclick .D

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.