.submit jquery语句后的输入字段为空



我试图使用('#form')内部的ajax调用发送数据。提交调用,但所有的输入的形式是空的,当我没有打算他们是。我认为这可能与$(文档)有关。ready语句在错误的位置使事情正常工作,但我无法使它工作。

<script>
(function($){   
    $(document).ready( function() {
        $("#success").hide();
        $("#inval_email").hide();
        $("#text_selection").on("change", function() {
            var id = $("#text_selection option:selected").attr("value");
            $("#inv_text").html($("#"+id).html());
        });
        $("#invitation_form").submit(function(e){
            var email = $('#email').val();
            var first_name = $('#first_name').val();
            var last_name = $('#last_name').val();
            var message_title = $('#message_title').val();
            var article_title = $('#article_title').val();
            var reference_location = $('#reference').val();
            var inv_text = $('#inv_text').html();
            var request;
            alert(first_name);
            e.preventDefault();
            request = $.ajax({
                type: 'POST',
                url: BASE_URL+"wp-content/themes/Flatter/ajax/send_invite.php",
                dataType: "text",
                data: { first_name: first_name, last_name: last_name, email: email, message_title: message_title, article_title: article_title, reference_location: reference_location, inv_text: inv_text },
                success: function(data){
                    console.log(data)
                    if(data=="true"){
                        $("#invitation").hide();
                        $("#success").show();
                    }
                    if(data=="false"){
                        $("#inval_email").show();
                    }
                }
            });
        });
    });
})(jQuery);
</script>
<div class="col-md-4">
<div id="success" hidden><br><br>Invitation sent successfully!</div>
<div id="invitation">
<br><br><br></br><h1>Invitation Form</h1>
<form id = "invitation_form">
First Name:<input id="first_name" type="text" name="first_name" required>
Last Name:<input id="last_name" type="text" name="last_name" required>
Email Address:<input id="email" type="text" name="email" required>
Message Title:<input id="message_title" type="text" name="message_title" required>
Article Title:<input id="article_title" type="text" name="article_title" required>
Reference Location:<input id="reference" type="text" name="reference" required>
Message:<textarea id="inv_text" style="resize: none" rows="10" placeholder="Select invitation type..." readonly required></textarea>
Invitation Type:
    <select id="text_selection">
        <option value="empty_field"></option>
        <option value="community_inv_text">Community Invitation</option>
        <option value="content_submission_inv" >Content Submission Invitation</option>
        <option value="individual_inv">Individual Invitation</option>
        <option value="content_submission_and_individual_inv">Content Submission and Individual Invitation</option>
        <option value="contributor_content_submission_inv">Contributor Content Submission Invitation</option>
    </select>
    <input id="submit_inv" type="submit" value="Invite">
</form>
在这件事上我将非常感激你的帮助。这段代码的目的是从用户那里收集信息,并将数据发送到另一个文件,以便对其进行处理。谢谢你的帮助。

我明白了。有一个CSS文件,是修改元素在相同的名称下,我在我的文件中使用(即first_name, last_name,电子邮件等)。

最新更新