用Javascript提交数据

用Javascript提交数据,javascript,jquery,form-submit,flot,Javascript,Jquery,Form Submit,Flot,使用用户输入的数字数据,我试图将该数据发送到使用jQuery的FLOT的函数,然后该函数将点绘制成图形。当我单击submit时,alert函数返回“NaN”,但继续绘制其他数据。我会做错什么?我是否需要将输入放入表单中 <input type="number" id="txt_name"> <input type="submit" value="Submit" onclick=" return hello();"> <script type="text/javasc

使用用户输入的数字数据,我试图将该数据发送到使用jQuery的FLOT的函数,然后该函数将点绘制成图形。当我单击submit时,alert函数返回“NaN”,但继续绘制其他数据。我会做错什么?我是否需要将输入放入表单中

<input type="number" id="txt_name">
<input type="submit" value="Submit" onclick=" return hello();">
<script type="text/javascript">

var d1 = [];
function hello(){

$(function() {


    var x=document.getElementById('txt_name');
    var y=parseInt(x);
    alert(y);
    d1.push([x,x]);
    d1.push([x+5,x+5]);

    var d2 = [[0, 3], [4, 8], [8, 5], [9, 13]];

    // A null signifies separate line segments

    var d3 = [[0, 12], [7, 12], null, [7, 2.5], [12, 2.5]];

    $.plot("#placeholder", [ d1, d2, d3 ]);

    // Add the Flot version string to the footer


});
}
</script>

var d1=[];
函数hello(){
$(函数(){
var x=document.getElementById('txt_name');
变量y=parseInt(x);
警报(y);
d1.推动([x,x]);
d1.推动([x+5,x+5]);
变量d2=[[0,3],[4,8],[8,5],[9,13];
//null表示单独的线段
变量d3=[[0,12],[7,12],空值[7,2.5],[12,2.5];
$.plot(#占位符“,[d1、d2、d3]);
//将Flot版本字符串添加到页脚
});
}

您在这一行的代码有问题:

var x=document.getElementById('txt_name');
这里的问题是document.getElementById('txt_name')返回一个
元素
对象,而不是用户输入的值。要获取一个值,您需要像这样调用
value
属性:

var x=document.getElementById('txt_name').value;
修复了您的代码:

<input type="number" id="txt_name">
<input type="submit" value="Submit" onclick=" return hello();">
<script type="text/javascript">

var d1 = [];
function hello(){

$(function() {


    var x=document.getElementById('txt_name').value;
    var y=parseInt(x);
    alert(y);
    d1.push([x,x]);
    d1.push([x+5,x+5]);

    var d2 = [[0, 3], [4, 8], [8, 5], [9, 13]];

    // A null signifies separate line segments

    var d3 = [[0, 12], [7, 12], null, [7, 2.5], [12, 2.5]];

    $.plot("#placeholder", [ d1, d2, d3 ]);

    // Add the Flot version string to the footer


});
}
</script>

var d1=[];
函数hello(){
$(函数(){
var x=document.getElementById('txt_name')。值;
变量y=parseInt(x);
警报(y);
d1.推动([x,x]);
d1.推动([x+5,x+5]);
变量d2=[[0,3],[4,8],[8,5],[9,13];
//null表示单独的线段
变量d3=[[0,12],[7,12],空值[7,2.5],[12,2.5];
$.plot(#占位符“,[d1、d2、d3]);
//将Flot版本字符串添加到页脚
});
}

请阅读更多信息。

您在这一行的代码有问题:

var x=document.getElementById('txt_name');
这里的问题是document.getElementById('txt_name')返回一个
元素
对象,而不是用户输入的值。要获取一个值,您需要像这样调用
value
属性:

var x=document.getElementById('txt_name').value;
修复了您的代码:

<input type="number" id="txt_name">
<input type="submit" value="Submit" onclick=" return hello();">
<script type="text/javascript">

var d1 = [];
function hello(){

$(function() {


    var x=document.getElementById('txt_name').value;
    var y=parseInt(x);
    alert(y);
    d1.push([x,x]);
    d1.push([x+5,x+5]);

    var d2 = [[0, 3], [4, 8], [8, 5], [9, 13]];

    // A null signifies separate line segments

    var d3 = [[0, 12], [7, 12], null, [7, 2.5], [12, 2.5]];

    $.plot("#placeholder", [ d1, d2, d3 ]);

    // Add the Flot version string to the footer


});
}
</script>

var d1=[];
函数hello(){
$(函数(){
var x=document.getElementById('txt_name')。值;
变量y=parseInt(x);
警报(y);
d1.推动([x,x]);
d1.推动([x+5,x+5]);
变量d2=[[0,3],[4,8],[8,5],[9,13];
//null表示单独的线段
变量d3=[[0,12],[7,12],空值[7,2.5],[12,2.5];
$.plot(#占位符“,[d1、d2、d3]);
//将Flot版本字符串添加到页脚
});
}

阅读更多信息。

您必须从输入中获取值

var x=document.getElementById('txt_name').value;
var y=parseInt(x, 10);

您必须从输入中获取值

var x=document.getElementById('txt_name').value;
var y=parseInt(x, 10);

不过,这可能有助于OP将代码片段与一些解释结合起来。你改变了什么?为什么?不过,这可能有助于OP对代码片段进行解释。你改变了什么?为什么?如果你能接受下面的任何一个答案就好了。如果你能接受下面的任何一个答案就好了。