email()不是通过onclick属性的功能

时间:2018-05-11 10:47:08

标签: javascript jquery html ajax

有人可以帮帮我吗?我错过了一些非常明显的东西吗我似乎无法调用我的函数来运行我的ajax调用。非常感谢任何帮助。感谢

HTML:

这只是我的html的片段,因为表单太长而且无法显示所有标题。

$(document).ready(function() {
  function email() {

    var emailUrl = "../assets/php/email_form_processing.php";

    $.ajax({
      url: emailUrl,
      method: 'post',
      data: $('#email_form').serialize(),
      datatype: 'json',
      success: function(result) {
        if (result) {
          alert("Email sent successfully");
        } else {
          alert("Failed!");
        }

      },
      error: function(error) {
        alert(error);
      }
    });
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="js/main.js"></script>

<form id="email_form" method="POST" enctype="multipart/form-data">
  <input type="button" id="email_submit" name="sendmail" class="btn btn-info" value="Send" onclick="email()">
</form>

1 个答案:

答案 0 :(得分:1)

不需要$(document).ready(function() {(因为它使函数在就绪函数之外不可用)

您的功能应如下所示

function email(){
 // your code here
}

此外,如果您使用的是jQuery,请尝试以下

$(document).ready(function() {
    $("#email_submit").click(function(event){
         // your code here
   });

});