尝试将文本输入附加到变量

时间:2016-07-20 19:33:38

标签: javascript php d3.js pie-chart

我正在使用HTML,JavaScript,一个名为d3.js和PHP的JavaScript库来创建一个程序,该程序将要求用户输入一组数字。一旦用户提交了一组数字,就会生成一个饼图。每次更改数字时,都会生成一个新的饼图。

我遇到的问题是我使用文本输入来接收数字,它们用逗号分隔,但我想将我的文本输入附加到我的数据变量(我的饼图的变量),以便每次插入一组数字时,都会出现一个新的饼图。我怎么能这样做?

这是我的文字输入:

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

这是我的饼图的原始数据变量,但我想将输入附加到我的数据变量:

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

如何将我的文本输入附加到我的数据变量(我的饼图的变量),以便每次插入一组数字时都会出现一个新的饼图?

3 个答案:

答案 0 :(得分:0)

使用此代码:

<!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>

结果我得到了4次点击按钮

enter image description here

答案 1 :(得分:0)

&#13;
&#13;
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)
})
&#13;
<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>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

使用input.split(&#39;,&#39;),它会将逗号分隔值转换为数组。然后使用concat函数组合数组。