javascript - 如何使用 Codeigniter 从 Ajax Jquery 中的 Controller 获取多个参数?

标签 javascript jquery ajax codeigniter

我正在从特定 ID 的文件夹中获取图像列表。现在我正在获取文件名,但我还想获取上传路径。

如何在一个函数中获取两种数据。

Jquery 代码:

listFilesOnServer(project_id);

    function listFilesOnServer (project_id) {
        var items = [];
        uploadURI = uploadURI+'/'+project_id;
        console.log(project_id+'--KAL--'+uploadURI);
        $.getJSON(uploadURI ,function(data,path) {
            console.log(data);
            $('div #list-group').html("").html(items.join(""));
        });
    }

Controller 代码:

function listFiles() {
        $this->load->helper('file');
        $project_id = $this->uri->segment(3);
        $builders_id = $this->admin_model->getBuilderID($project_id);
        $UPLD_PATH = $this->admin_model->builder_UPLD_PATH($builders_id);
        $upload_path = "./application/assets/images/" . $UPLD_PATH;
        $files = get_filenames($upload_path);
        echo json_encode($files);
    }

最佳答案

您应该修改 Controller 操作,使其返回 json_encode(array('files'=>$yourFiles, 'filePath'=>$yourFilePath) );,如下所示:

function listFiles() {
        $this->load->helper('file');
        $project_id = $this->uri->segment(3);
        $builders_id = $this->admin_model->getBuilderID($project_id);
        $UPLD_PATH = $this->admin_model->builder_UPLD_PATH($builders_id);
        $upload_path = "./application/assets/images/" . $UPLD_PATH;
        $files = get_filenames($upload_path);
        echo json_encode(array('files'=>$files, 'uploadPath'=>$upload_path) );
        exit();
}

然后修改 jquery 代码来处理 json 响应并提取响应,如下所示:

listFilesOnServer(project_id);

function listFilesOnServer (project_id) {
    var items = [];
    uploadURI = uploadURI+'/'+project_id;
    console.log(project_id+'--KAL--'+uploadURI);
    $.getJSON(uploadURI ,function(data,path) {
        //Your upload path
        console.info("UPLOAD PATH: "+data.uploadPath);
        //Your files
        console.log(data.files);
        //Your processing logic goes here
        $('div #list-group').html("").html(items.join(""));
    });
}

关于javascript - 如何使用 Codeigniter 从 Ajax Jquery 中的 Controller 获取多个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36938871/

相关文章:

Javascript 为什么 Number 和 ParseFloat 在相加数字时都会创建一个长数字?

JavaScript D3 : zoom limit

javascript - onkeyup 对每一行的出现和计算

ajax - jQuery 将类作为 POST 参数发送

jquery Ajax 没有响应?

javascript - Node JS : res. 发送不是函数

javascript - 是否可以通过 support/index.js 在 Cypress 上仅运行特定测试?

javascript - Phonegap 应用程序错误 - 连接到服务器失败

javascript - 是否可以在 HTML 元素上设置 "watch",以便在 HTML 元素更改时命中 javascript 调试器断点?

javascript - $ajax 成功响应打印 HTML 页面