Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用外部JS文件捕获HTML表单数据_Javascript_Html_Twitter Bootstrap - Fatal编程技术网

Javascript 使用外部JS文件捕获HTML表单数据

Javascript 使用外部JS文件捕获HTML表单数据,javascript,html,twitter-bootstrap,Javascript,Html,Twitter Bootstrap,我试图在HTML页面(也有引导代码)上创建一个表单,当用户单击submit按钮时,我希望数据被同一目录中的外部javascript文件捕获和处理。然而,我不认为我这样做是正确的,因为当我点击提交按钮时,页面会重新加载,添加的结果不会显示在下面 以下是指向这些文件的链接: 提前谢谢 你必须改变 <button type="submit" class="btn btn-default" method="POST" onclick="process()">Submit</button

我试图在HTML页面(也有引导代码)上创建一个表单,当用户单击submit按钮时,我希望数据被同一目录中的外部javascript文件捕获和处理。然而,我不认为我这样做是正确的,因为当我点击提交按钮时,页面会重新加载,添加的结果不会显示在下面

以下是指向这些文件的链接:

提前谢谢

你必须改变

<button type="submit" class="btn btn-default" method="POST" onclick="process()">Submit</button>


您可以使用ajax实现它

以下是您可以参考的小演示:

注意:根据您的要求更改actionUrl

test.Html:

    <form action='actionUrl' class='ajax' method='post'>
         <input type='text' name='name' placeholder='Enter Name'/>
         <input type='submit' value='submit'/>
    </form>
    <div id='somediv'></div>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src='main.js'></script>

请尝试将
onclick=“process()”
更改为
onclick=“process();return false;”
并阅读“对不起,这对我不起作用”。我试过onclick和onsubmitI,但仍然不起作用。然后我尝试将它从jQuery('#result').html(result)更改为jQuery('#result').text(result),并在page@user2411857这个答案是错误的。不能对DOM对象执行
parseInt()
。您需要执行以下操作:
parseInt($(“#firstquartergrade”).val()
function process(){
var q1 = document.getElementById("firstquartergrade").value;
var q2 = document.getElementById("secondquartergrade").value;
var result = q1+q2;
document.getElementById("result").innerHTML = result;
}
function process(){
var q1 = parseInt(jQuery("#firstquartergrade").val());
var q2 = parseInt(jQuery("#secondquartergrade").val()); 
var result = q1+q2; 
jQuery('#result').html(result);
}
    <form action='actionUrl' class='ajax' method='post'>
         <input type='text' name='name' placeholder='Enter Name'/>
         <input type='submit' value='submit'/>
    </form>
    <div id='somediv'></div>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src='main.js'></script>
    $('form.ajax').on('submit',function(){

    var vForm=$(this),
        url=vForm.attr('action'),
        type=vForm.attr('method'),
        data={};

    vForm.find('[name]').each(function(){
       var vInput=$(this),
       name=vInput.attr('name'),
       value=vInput.attr('value');
       data[name] = value;
     });

     $.ajax({
        url:url,
        type:type,
        data:data,
        success:function(response){
            $('#somediv').html(response);
          } 
     });
     return false;
    });