Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 29

Discussione: richiama funzione

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    richiama funzione

    ciao a tutti,

    è corretto fare cosi:
    codice:
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function calcola(prezzo,sconto,ulteriore) {
      var prezzo = parseFloat(prezzo.value);
      if (prezzo = ""){
    		var totale = "DA PREVENTIVARE"
      }else{
    		var sconto = prezzo * sconto/100;
    		var scontato = prezzo-sconto;
      		var ulteriore = scontato * uteriore/100;
    		var totale = scontato - ulteriore
    	}
    	return Math.floor(totale*100)/100
    }
    </script>
    poi la richiamo cosi:
    codice:
    <input name="finale" type="text" id="finale" onload="value=(calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?>));" size="10" maxlength="8">
    non riesco a capire perche non funziona

    grazie :master:

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    <input name="finale" type="text" id="finale" onclick="this.value = calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?> );" size="10" maxlength="8">

    Questo potrebbe funzionare, ma non credo sia esattamente quello che vuoi (dovrai cambiare l'evento, e applicarlo ad un altro campo).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    codice:
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function calcola(prezzo,sconto,ulteriore) {
      if (prezzo = ""){
    		var totale = "DA PREVENTIVARE"
      }else{
    		var sconto = prezzo * sconto/100;
    		var scontato = prezzo-sconto;
      		var ulteriore = scontato * uteriore/100;
    		var totale = scontato - ulteriore
    	}
    	return Math.floor(finale*100)/100
    }
    </script>
    
    <body onload="calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?>)">
    poi la assegno al campo di testo cosi
    codice:
    <input name="finale" type="text" id="finale" value="calcola(this)" size="10" maxlength="8">
    vi prego aiutatemi dove sto sbagliando

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    Originariamente inviato da Mich_
    <input name="finale" type="text" id="finale" onclick="this.value = calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?> );" size="10" maxlength="8">

    Questo potrebbe funzionare, ma non credo sia esattamente quello che vuoi (dovrai cambiare l'evento, e applicarlo ad un altro campo).
    ho provato cosi come mi hai detto ma la casella rimane vuota
    codice:
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function calcola(prezzo,sconto,ulteriore) {
      if (prezzo = ""){
    		var totale = "DA PREVENTIVARE"
      }else{
    		var sconto = prezzo * sconto/100;
    		var scontato = prezzo-sconto;
      		var ulteriore = scontato * uteriore/100;
    		var totale = scontato - ulteriore
    	}
    	return Math.floor(finale*100)/100
    }
    </script>
    
    <body onload="calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?>)">
    poi la richiamo cosi:
    codice:
    <input name="finale" type="text" id="finale" onload="this.value = calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?> );" size="10" maxlength="8">
    non mi funziona

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    posta un link ad una versione online.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    devo metterlo ancora on-line dammi un minuto che provvedo

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    clicca qui

    ti faccio un riepilogo del linguaggio
    codice:
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function calcola(prezzo,sconto,ulteriore) {
      if (prezzo = ""){
    		var totale = "DA PREVENTIVARE"
      }else{
    		var sconto = prezzo * sconto/100;
    		var scontato = prezzo-sconto;
      		var ulteriore = scontato * uteriore/100;
    		var totale = scontato - ulteriore
    	}
    	return Math.floor(finale*100)/100
    }
    </script>
    
    <body onload="calcola(<?php echo $row_LISTINO['prezzo']; ?>,<?php echo $row_CLIENTE['scontoTarghe']; ?>,<?php echo $row_CLIENTE['ultscontoTarghe']; ?>)">
    poi la assegno al campo cosi
    codice:
    <input name="finale" type="text" id="finale" onload="this.value = calcola(this );" size="10" maxlength="8">
    :master:

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ok, allora, vediamo intanto di sistemare qualche piccolo problema (anche se non è fondamentale)

    codice:
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function calcola(prezzo,sconto,ulteriore) {
      if (prezzo = ""){
    		var totale = "DA PREVENTIVARE";
      }else{
    		var sconto = prezzo * sconto/100;
    		var scontato = prezzo-sconto;
      		var ulteriore = scontato * uteriore/100;
    		var totale = scontato - ulteriore;
    	}
    	return Math.floor(finale*100)/100;
    }
    </script>
    Ossia mancavano dei ";"

    Altro problema, hai un sacco di input con lo stesso id!!! id è univoco: un elemento, un id.

    Poi, perchè non fai semplicemente
    <input ... value=calcola(....)> ?

    Se i valori degli argomenti da passare a calcola sono in variabili php, potresti fare

    <input value="<?php echo("calcola(".$var1.",".$var2.",".$var3.");");?> ">

    dove $var sono i nomi delle variabili che vuoi passare.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    mi dà errore qui
    codice:
    Parse error: parse error, unexpected '<' in c:\programmi\apache group\apache\htdocs\incisoria\admin\stampa\stampa_rivenditori_targhe.php on line 107
    e questa è la riga incriminata
    codice:
          <input value="<?php echo("calcola(".<?php echo $row_LISTINO['prezzo']; ?>.",".<?php echo $row_CLIENTE['scontoTarghe']; ?>.",".<?php echo $row_CLIENTE['ultscontoTarghe']; ?>.")" size="10" maxlength="8">
    il codie javascript l'ho modificato cosi:
    codice:
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function calcola(prezzo,sconto,ulteriore) {
      if (prezzo = ""){
    		var totale = "DA PREVENTIVARE";
      }else{
    		var sconto = prezzo * sconto/100;
    		var scontato = prezzo-sconto;
      		var ulteriore = scontato * uteriore/100;
    		var totale = scontato - ulteriore;
    	}
    	return Math.floor(finale*100)/100;
    }
    </script>

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Troppa grazia, Sant'Antonio

    codice:
    <input value="<?php echo("calcola(".$row_LISTINO['prezzo'].",".$row_CLIENTE['scontoTarghe'].",".$row_CLIENTE['ultscontoTarghe'].");"); ?>" size="10" maxlength="8">
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.