我在名为form的控制器中有一个php函数,我想根据情况显示一些消息。

我在if else块内回显该消息。但是,不是存储在msg参数中并以AJAX成功函数中给出的格式显示,而是在新页面中显示回显的消息。

<script type="text/javascript">
        $("#sign_up").click(function() {

            var form_data = {
                firstName: $('#firstName').val(),
                secondName: $('#secondName').val(),
                email: $('#email').val(),
                password: $('#password').val()
            };
            $.ajax({
                url: "<?php echo site_url('form/submit'); ?>",
                type: 'POST',
                data: form_data,
                success: function(msg) {
                    if (msg == 'YES') {
                        $('#alert-msg').html('<div class="alert alert-success text-center">Your mail has been sent successfully!</div>'); }
                    else if (msg == 'NO') {
                        $('#alert-msg').html('<div class="alert alert-danger text-center">Error in sending your message! Please try again later.</div>'); }
                    else {
                        $('#alert-msg').html('<div class="alert alert-danger">' + msg + '</div>'); }
                }
            });
            return false;
        });
    </script>


感谢所有尝试提供帮助的人!

最佳答案

尝试使用这种方式。

<script type="text/javascript">
    $("#sign_up_form").submit(function() {

        var form_data = {
            firstName: $('#firstName').val(),
            secondName: $('#lastName').val(),
            email: $('#email').val(),
            password: $('#password').val()
        };
        $.ajax({
            url: "<?php echo site_url('form/submit'); ?>",
            type: 'POST',
            data: form_data,
            success: function(msg) {
                if (msg == 'YES') {
                    $('#alert-msg').html('<div class="alert alert-success text-center">Your mail has been sent successfully!</div>'); }
                else if (msg == 'NO') {
                    $('#alert-msg').html('<div class="alert alert-danger text-center">Error in sending your message! Please try again later.</div>'); }
                else {
                    $('#alert-msg').html('<div class="alert alert-danger">' + msg + '</div>'); }
            }
        });
        return false;
    });
</script>


在这里,我不建议使用单击事件,而建议使用Submit事件,并且secondName: $('#secondName').val(),中存在错误,请将其更改为secondName: $('#lastName').val(),
您的表格将是

    <div id="alert-msg"></div>
 <?php
      echo form_open("form/submit", array("id"=>"sign_up_form"));
  ?>
 <div class="input-group">
     <input type="text" class="form-control" name="firstName" placeholder="First Name" id="firstName">
     <input type="text" class="form-control" name="lastName" placeholder="Last Name" id="lastName">
 </div>

 <input type="email" class="form-control" name="email" placeholder="Email" id="email">
 <input type="password" class="form-control" name="password" placeholder="Password" id="password">

 <div style="text-align:center;margin-top:20px">
      <button type="submit" class="btn btn-primary" id="sign_up">Sign Up</button>
 </div>

07-24 16:23