javascript - Chrome 提交表单后未从 ajax 加载 View

标签 javascript php jquery ajax codeigniter

我正在尝试从ajax获取页面 View 并放入一些div。我目前在 Codeigniter 工作。

Jquery Ajax

  $(document).ready(function() {

    $("form#data").submit(function(){
       // form validation rules..
        var formData = new FormData($(this)[0]);

        $.ajax({
            url: base_url + "index.php/hotels/quick_addNewHotel",
            type: 'POST',
            data: formData,
            async: false,
            success: function (data) {
                $("#form-alert").html(" ");
                $("#step1").removeClass("progtrckr-todo").addClass("progtrckr-done");
                $("#quick_setup").html(data);
            },
            cache: false,
            contentType: false,
            processData: false
        });

        return false;
     }); 

  });

Controller (酒店)

 function quick_addNewHotel()
{
    if ($this->session->userdata('logged_in')) {
         //php code to post input form data to database

         $this->load->view('quickSetup/addNewHotel');
    } 
}

以上代码在 Firefox 中运行良好。 View 在 ajax 成功时加载到 div。但在 Chrome 中尝试时。

表单数据提交成功并存入数据库。但不是加载 View $this->load->view('quickSetup/addNewHotel'),而是重定向到上一页,该页面包含已提交的表单。我的代码有没有错误。

最佳答案

var formData 之前写入 e.preventDefault(); 就可以了。还将 function() 更改为 function(e)。我认为 return false; 对于 Chrome 来说还不够。

希望我有帮助。 :)

关于javascript - Chrome 提交表单后未从 ajax 加载 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29341876/

相关文章:

javascript - 如何在同一个元素中调用onclick两次

php - 将链接添加到此 PHP 语句

javascript - 如何在 Watson Conversation 中使用“选择选项”

php - "Adaptive Server is unavailable or does not exist"从 PHP 连接到 SQL Server 时出错

php - 根据用户选择检索mysql表数据并显示在html表中

javascript - Canvas 在函数中的 for 循环后不会绘制矩形

php - JSON 解析 --> Swift | JSON 写入中的顶级类型无效

javascript - 我有 3 个 div,每个都有自己的主题,现在我想为每个 div 打开它的模式

jQuery 验证优雅的条件逻辑

javascript - AJAX 传递变量问题