我正在使用HTML,JavaScript,一个名为d3.js和PHP的JavaScript库来创建一个程序,该程序将要求用户输入一组数字。一旦用户提交了一组数字,就会生成一个饼图。每次更改数字时,都会生成一个新的饼图。
我遇到的问题是我使用文本输入来接收数字,它们用逗号分隔,但我想将我的文本输入附加到我的数据变量(我的饼图的变量),以便每次插入一组数字时,都会出现一个新的饼图。我怎么能这样做?
这是我的文字输入:
< input type="text" name="first" min="1" max="100" >
这是我的饼图的原始数据变量,但我想将输入附加到我的数据变量:
var data [4,5,11,,2,10,7];
如何将我的文本输入附加到我的数据变量(我的饼图的变量),以便每次插入一组数字时都会出现一个新的饼图?
答案 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次点击按钮
答案 1 :(得分: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)
})
&#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;
答案 2 :(得分:0)
使用input.split(&#39;,&#39;),它会将逗号分隔值转换为数组。然后使用concat函数组合数组。