2017-06-15 12 views
-1

英語が醜い場合はこのページが新しくなりますが、私は自分自身でコミュニケーションするためにできることをしています:)
私は1日で作業した合計時間を計算できるページです。これは15/06/17まで受け取りました。 my page
注:私のページで使用されている言語はイタリア語です。申し訳ありません。ライブラリーを使用しないでJavaScriptを使用して1日の総労働時間を取得する

GIORNO =日

私の問題は、私は「Calcola」と呼ばれるボタンの機能を解決できないということです
これは私が得たものである:(私はここにコードを記述する方法がわかりませんそう、Googleのツールを使用して、「私のページ」)上のコードを参照してください。

問題が呼ばれる最後である:私は私の英語のため申し訳ありません繰り返し、私は、これは明らかにされている願っています

function differenza() 
{  
     problem... 
} 

それを改善する。

+0

最初に教えてください。 third。 2つの最初の数字が書かれた後に追加することができます(例12のように書くと、それは自動的に次のようになります)。 12:分を追加するスペースが残っています)。これを適用して時間と終了時間を入力すると、計算が簡単になります。 –

+0

私はそれを試してみるつもりです –

+0

'var time = document.getElementsByClassName( 'time'); //クラス "time"のすべての要素を取得する for(var i = 0; i 5)this.value = this.value.substr(0、this.value.length - 1);//文字列の長さ> 5 }の場合は最後の桁を削除します。 }; ' –

答えて

0

@masterNixeおかげで誰も私にはこれを見てなかったとしてください Try it

それはあなたの例@masterNixeには少し異なるが、おかげ:誰かが見つけた場合、ここでD
try
に私のページですバグはあなたはそれが簡単に、時間の24時間形式を使用するために、/ * jsのコード*/ 秒を使ってコメントとしてスクリプトを行ったすべての

<script> 
    function differenzaTotale() { 
     var i; 
     for (i = 1; i < document.getElementById("tabella").rows.length; i++) { 
      /*if (document.getElementById("Giorno" + i + "EntrataMinuti").value == ""){ 
      document.getElementById("Giorno" + i + "EntrataMinuti").value = "00"; 
      } 
      else if (document.getElementById("Giorno" + i + "UscitaMinuti").value == ""){ 
       document.getElementById("Giorno" + i + "UscitaMinuti").value = "00"; 
      } 
      else if (document.getElementById("Giorno" + i + "EntrataOra").value == ""){ 
       document.getElementById("Giorno" + i + "EntrataOra").value = "00"; 
      } 
      else if (document.getElementById("Giorno" + i + "UscitaOra").value == ""){ 
       document.getElementById("Giorno" + i + "UscitaOra").value = "00"; 
      } 
      else if (document.getElementById("Giorno" + i + "PausaMinuti").value == ""){ 
       document.getElementById("Giorno" + i + "PausaMinuti").value = "00"; 
      }*/ 
      differenzaRiga(i); 
     } 
    } 

    function differenzaRiga(i) { 

     var risultato = primoControllo(i); 
     if (risultato == false){ 
      return false; 
     } 

     /* calcolo */ 
     var minDiUscita = risultato.minDiUscita; 
     var minDiEntrata = risultato.minDiEntrata; 
     var minDiPausa = risultato.minDiPausa; 
     /*console.log(minDiUscita + '-'+ minDiEntrata +'-'+ minDiPausa);*/ 
     var differenzaInMin = minDiUscita - minDiEntrata - minDiPausa; 
     var oreFatte = Math.floor(differenzaInMin/60); 
     var minutiFatti = differenzaInMin % 60; 
     /*console.log(minDiUscita); 
     console.log(minDiEntrata); 
     console.log(minDiPausa); 
     console.log(differenzaInMin); 
     console.log(oreFatte); 
     console.log(minutiFatti);*/ 
     document.getElementById("Giorno" + i + "Totale").value = (pad(oreFatte) + ":" + pad(minutiFatti)); 
    } 

    function pad(n) { // funzione che mi aiuta a sistemare i numeri prima dello zero mettendogli uno 0 davvanti es: 7:5 -> 07:05 NON HA CHE VEDERE CON IL CALCOLO è SOLO ESTETICA 
     return (n < 10) ? ("0" + n) : n; 
    } 
    document.getElementById('body').onkeypress = function (e) {//funzione che mi acceta l'invio come schiacciatoredi bottone 
     if (!e) e = window.event; 
     var keyCode = e.keyCode || e.which; 
     /*console.log(keyCode);*/ 
     if (keyCode == '13') { 
      differenzaTotale(); 
     } 
    } 

    function primoControllo(i) { 
     if (document.getElementById("Giorno" + i + "EntrataOra").value == "") { 
      return false; 
     } 
     else if (document.getElementById("Giorno" + i + "UscitaOra").value == "") { 
      return false; 
     } 
     if (document.getElementById("Giorno" + i + "UscitaMinuti").value == "") { 
      var minutiUscita = 0; 
     } 
     else { 
      var minutiUscita = parseInt(document.getElementById("Giorno" + i + "UscitaMinuti").value); 
     } 
     if (document.getElementById("Giorno" + i + "EntrataMinuti").value == "") { 
      var minutiEntrata = 0; 
     } 
     else { 
      var minutiEntrata = parseInt(document.getElementById("Giorno" + i + "EntrataMinuti").value); 
     } 
     if (document.getElementById("Giorno" + i + "PausaMinuti").value == "") { 
      var minutiPausa = 0; 
     } 
     else { 
      var minutiPausa = parseInt(document.getElementById("Giorno" + i + "PausaMinuti").value); 
     } 
     if (document.getElementById("Giorno" + i + "PausaMinuti").value > "60") { 
      document.getElementById("Giorno" + i + "PausaMinuti").value = "60"; 
      var minutiPausa = 60; 
     } 
     var minDiUscita = document.getElementById("Giorno" + i + "UscitaOra").value * 60 + minutiUscita; // math -> 16*60 + 20 
     var minDiEntrata = document.getElementById("Giorno" + i + "EntrataOra").value * 60 + minutiEntrata; // math -> 7*60 + 30 
     var minDiPausa = minutiPausa; // 45 
     if (minDiUscita < minDiEntrata) { 
      window.alert("ATTENZIONE: le ore di entrata sono maggiori a quelle di uscita"); 
      return false; 
     } 
     if (minDiUscita == minDiEntrata) { 
      window.alert("ATTENZIONE: le ore di entrata sono uguali a quelle di uscita"); 
      return false; 
     } 

     var risultato = { 

      minDiUscita: minDiUscita, 
      minDiEntrata: minDiEntrata, 
      minDiPausa: minDiPausa 
     }; 

     return risultato; 
    } 
</script> 
関連する問題