使用 JavaScript 将数据插入数据库时​​,在控制台中创建错误“超出最大调用堆栈大小”

2024-06-21

我进行了大量搜索来修复过去几天遇到的 JavaScript 错误。我看到很多问题都得到了解答堆栈溢出,但不幸的是,没有人符合我的错误。

我想要的是发送一个简单的记录到database using JavaScript and PHP.

但我得到了“jquery.js:8638 未捕获 RangeError: 超出最大调用堆栈大小“ 错误Console.
感谢您的答复。

我的简单HTML code

        
<form autocomplete="off">
    <div class="form-group col-sm">
        <label for="fname">First Name</label>
        <input type="text" name="fname" id="fname" class="form-control">
    </div>
    <div class="form-group col-sm">
        <label for="lname">Last Name</label>
        <input type="text" name="lname" id="lname" class="form-control">
    </div>
    <div class="form-group col-sm">
        <button class="btn btn-primary" type="submit" id="submitBtn">Submit</button>
    </div>
</form>

And JavaScript code

$(document).ready(function(){
$("#submitBtn").on("click",function(e){
e.preventDefault();
var fname = $("#fname").val();
var lanme = $("#lname").val();

$.ajax({
    url : "insertData.php",
    type : "POST",
    data : {fname:fname, lname:lname},
    success : function(data){
        if(data == 1){
            tableData();
        }else{
         alert("Can't save record");   
        }

    }
});
})
});

您可以使用submit功能在你的form而不是使用click功能于type="submit" button.

另外,您在发送 ajax 请求时输入了错误的变量类型lname但你把它当作lanme

现场演示:(代码经过测试并且有效)

$(document).ready(function() {
  $("#myForm").on("submit", function(e) {
    e.preventDefault();

    //Values
    var fname = $("#fname").val();
    var lname = $("#lname").val();

    //Ajax
    $.ajax({
      url: "insertData.php",
      type: "POST",
      data: {
        fname: fname,
        lname: lname
      },
      success: function(data) {
        if (data == 1) {
          //tableData();
        } else {
          //alert("Can't save record");   
        }
      }
    });
  })
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<form id="myForm" autocomplete="off">
  <div class="form-group col-sm">
    <label for="fname">First Name</label>
    <input type="text" name="fname" id="fname" class="form-control">
  </div>
  <div class="form-group col-sm">
    <label for="lname">Last Name</label>
    <input type="text" name="lname" id="lname" class="form-control">
  </div>
  <div class="form-group col-sm">
    <button class="btn btn-primary" type="submit" id="submitBtn">Submit</button>
  </div>
</form>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 JavaScript 将数据插入数据库时​​,在控制台中创建错误“超出最大调用堆栈大小” 的相关文章

随机推荐