Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [jQuery] simulare click

    Buon giorno.
    Ho due link che richiamano due funzioni:
    codice:
    <a id="Filed" href="javascript:$('#Filedata1').uploadifyUpload();">Upload</a>
    <a id="Clear" href="javascript:$('#Filedata1').uploadifyClearQueue();">cancella coda</a>
    Ho una funzione che mi va a controllare se il file che sto caricando è già presente nella cartella:
    codice:
    function verify(nFile){
    		var str = "<?php echo $arr;?>";
    		var myarray = str.split(',');
    		for(var i = 0; i < myarray.length; i++)
    		{
    			if(nFile==myarray[i]){
    				if(confirm("Sovrascrivere?")){
    					return true;
    				}
    				else{
    					return false;
    				}	 
    			}
    		}
    	}
    Gli dico se vuole sovrascriverlo oppure no.
    Vorrei gestire i due controlli in questo modo:
    1) nel return true, vorrei far in modo di simulare il link Upload
    2) nel return false, vorrei far in modo di simulare il link Cancella coda.

    Come posso fare?
    Grazie mille.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Vedi se l'evento trigger fa al caso tuo
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    buon giorno.
    Ho provato come dicevi tu e ho trovato questa guida https://learn.jquery.com/events/trig...vent-handlers/ ed ho cercato di fare in questo modo:
    codice:
    if(nFile==myarray[i]){
    	if(confirm("Sovrascrivere?")){
    		//uploadifyUpload();
    		$( "a#Filed" ).trigger( "click" );
    		return true;
    	}
    	else{
    		$( "a#learn" ).trigger( "click" );
    		return false;
    	}	 
    }
    1) Ho provato anche con "simulate", ma niente da fare.
    2) ho provato a togliere il "return false", ma niente

    Della serie, "compro una vocale", hai altre soluzioni?
    Grazie ancora.

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Io cambierei i tag link con dei button e dovrebbe andare
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao, i dettagli che hai postato sono ambigui.

    Nel post inizialmente hai scritto:
    codice:
    <a id="Clear"
    Nell'ultimo post hai usato:
    codice:
    $( "a#learn" )
    Assicurati che quel selettore corrisponda all'elemento corretto.

    Per far scatenare l'evento click sui due tag <a> puoi usare:
    codice:
    $("#Filed")[0].click();
    e
    codice:
    $("#Clear")[0].click();
    Non so bene il perché ma in sostanza il metodo click() di jQuery non agisce sull'azione dettata da href.
    E' possibile però usare l'analogo metodo click() del DOM. Per cui $("selettore")[0] restituisce un elemento del DOM.

    In alternativa puoi usare dei pulsanti, come indica cavicchiandrea.

    Oppure, altra alternativa, potresti richiamare le due funzioni ($('#Filedata1').uploadifyUpload(); e $('#Filedata1').uploadifyClearQueue();) direttamente dove ti servono, all'interno della condizione.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  6. #6
    ho provato cosi:
    codice:
    <button style="display:none" type="button" id="ButFiled" onclick="javascript:$('#Filedata1').uploadifyUpload();">Cancella coda</button>
    <button style="display:none" type="button" id="ButClear" onclick="javascript:$('#Filedata1').uploadifyClearQueue();">Cancella coda</button>
    
    if(confirm("Sovrascrivere?")){
    	$( "button#ButFiled" ).trigger( "click", function() {
    	alert( "ok" );
    	});
    	return true;
    }
    else{
    	$( "#ButClear" ).trigger( "onClick" );
    	return true;
    }
    di sicuro sbaglio qualcosa, ma non riesco nemmeno cosi...

  7. #7
    ho fatto come indicato nell'ultimo post e funziona in modo parziale.
    Solo per questa funzione($('#Filedata1').uploadifyUpload();) l'altra non funziona.

    Questa funzione serve per caricare il file.
    Ma, richiamandola come di seguito, perde i riferimenti del nome di due cartelle, che passo in modo dinamico, cosi mi carica il file, ma lo carica al di fuori delle cartelle.
    codice:
    if(confirm("Sovrascrivere?")){
    	//$("#Filed")[0].click();
    	$('#Filedata1').uploadifyUpload();
    	return true;
    }
    Quindi devo passare i nomi delle due cartelle, ma la difficoltà è che anche passandoglieli, nella funzione uploadifyUpload(), non li riconosce.
    Adesso, faccio un po' di prove e vedo se è funziona.
    Cosi vi dico.
    Grazie mille, ragazzi come sempre.

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.