Javascript 函数未定义,但它是

标签 javascript

我正在使用 AJAX 表单提交进行一些测试,但我不断从下面的代码中收到ReferenceError:submit_ajax is not Defined。但是,您可以看到它已定义。

<script type="javascript">
function submit_ajax(){
    data = {'email':$('#email2').val(),'password':$('#pwd2').val()}

    $.ajax({
        url: 'ajax_testing.php',
        data: data,
        success: function() {
            //AJAX success
            $('#success_fail').html('success!');
            window.setTimeout(function() { $('#success_fail').hide(); }, 3000);
            $('#myModal2').hide();
        },
        error: function() {
            //Ajax failure
            $('#success_fail').html('failed!');
            window.setTimeout(function() { $('#success_fail').hide(); }, 3000);
            $('#myModal2').hide();
        }
    });
}

</script>


    <div>
        <div id="success_fail"></div>
      <!-- Trigger the modal with a button -->
      <button type="button" class="btn btn-info btn-lg" id="button_for_modal2" data-toggle="modal" data-target="#myModal2">Form Submitted via AJAX and No Parent Refresh</button>

      <!-- Modal -->
      <div class="modal fade" id="myModal2" role="dialog">
        <div class="modal-dialog">

          <!-- Modal content-->
          <div class="modal-content">
            <div class="modal-header">
              <button type="button" class="close" data-dismiss="modal">&times;</button>
              <h4 class="modal-title">Title of Form</h4>
            </div>
            <div class="modal-body">
              <h2>Vertical (basic) form</h2>
              <!--<form action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post">*******************************AJAX*********************************-->
                <div class="form-group">
                  <label for="email">Email:</label>
                  <input type="email" class="form-control" id="email2" placeholder="Enter email (ajax)" name="email2">
                </div>
                <div class="form-group">
                  <label for="pwd">Password:</label>
                  <input type="password" class="form-control" id="pwd2" placeholder="Enter password (ajax)" name="pwd2">
                </div>
                <button onclick="submit_ajax()" class="btn btn-default">Submit</button>
              <!--</form>-->
            </div>
            <div class="modal-footer">
              <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            </div>
          </div>
        </div>
      </div>
    </div>  

我尝试直接在控制台中运行该函数,但得到了同样的结果。

知道这里出了什么问题吗?

最佳答案

而不是使用 <script type="javascript">使用<script type="text/javascript">这是 JS 代码的有效类型。

关于Javascript 函数未定义,但它是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45405853/

相关文章:

javascript - 作为表单属性的表单元素

javascript - 将对象不可变地添加到作为对象属性的数组并返回新对象的简洁方法

javascript - ag-grid api是否支持列过滤下拉

javascript - 如何让公司内的其他人可以访问本地主机

javascript - 使用 ruby​​ 设置基本的本地服务器

javascript - 在 Istanbul 尔显示没有 'Ignore' 注释的真实测试覆盖率

javascript - 如何使用循环通过异步函数更改数组中项目的属性?

JavaScript HTTP GET 请求适用于 Firefox 和 iPad Safari,但不适用于 Mac OS Safari

javascript - Angular 2 : Filter by value in nested array?

javascript - 如何使用具有不同内容的相同警报(?)