2016-07-20 7 views
-1

Ich verwende HTML, JavaScript, eine JavaScript-Bibliothek namens d3.js und PHP, um ein Programm zu erstellen, das den Benutzer auffordert, eine Reihe von Zahlen einzugeben. Sobald der Benutzer die Zahlenkombination übermittelt, wird ein Kreisdiagramm generiert. Jedes Mal, wenn die Zahlen geändert werden, wird ein neues Kreisdiagramm generiert.Versucht, eine Texteingabe an eine Variable anzufügen

Das Problem, das ich habe, ist, dass ich eine Texteingabe verwende, um die Zahlen aufzunehmen, sie sind durch ein Komma getrennt, aber ich möchte meine Texteingabe an meine Datenvariable (Variable für mein Tortendiagramm) anhängen Jedes Mal, wenn eine Reihe von Zahlen eingefügt wird, erscheint ein neues Kreisdiagramm. Wie kann ich das machen?

Das ist meine Texteingabe:

< input type="text" name="first" min="1" max="100" > 

Dies ist für meinen Tortendiagramm meine ursprüngliche Datenvariable, aber ich mag, dass meine Eingabe an meinen Datenvariable anhängen:

var data [4,5,11,,2,10,7]; 

Wie anfügen ich meine Texteingabe in meine Datenvariable (Variable für mein Tortendiagramm), so dass jedes Mal, wenn eine Reihe von Zahlen eingefügt wird, ein neues Kreisdiagramm angezeigt wird?

+3

was ist die Frage? – svarog

+0

Frage ist unklar –

+0

die Frage ist "Wie füge ich meine Texteingabe an meine Datenvariable (Variable für mein Tortendiagramm), so dass jedes Mal, wenn eine Reihe von Zahlen eingefügt wird ein neues Kreisdiagramm erscheint?" – AsiaNwoye

Antwort

0

Mit diesem Code:

<!DOCTYPE html> 
<html lang="en-US"> 
<head> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
</head> 
<body> 
    <input type="text" name="first" min="1" max="100"> 
    <input type="submit" name="btnSubmit" id="btnSubmit"> 
    <script type="text/javascript"> 
     var data = new Array(); 
     $('#btnSubmit').click(function() { 
      var value = parseInt($("input[name=first]").val(), 10); 
      if(!isNaN(value)){ 
       data.push(value); 
       console.log(data); 
      } 
     }); 
    </script> 
</body> 
</html> 

Ergebnis I mit 4-mal bekam klicken

enter image description here

0

var data = [4,5,11,2,10,7] 
 

 
$("#submit").click(function(){ 
 
    var input = $("#myInput").val().split(",") 
 
    $("#myInput").val("") 
 

 
    input.forEach(function(item){ 
 
     data.push(parseInt(item, 10)) 
 
    }) 
 
    
 
    // data now includes new input. Pass to your chart building function here 
 
    alert(data) 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input id ="myInput" type="text" name="first" min="1" max="100"> 
 
<button id="submit"> 
 
    submit 
 
</button>

0

Verwenden input.split ('') , die Komma getrennt v konvertieren wird passt auf Array. Verwenden Sie dann die concat-Funktion, um das Array zu kombinieren.

+0

Ich verstehe es nicht – AsiaNwoye

Verwandte Themen