jqgrid - upload a file in add/edit dialog

I'm new to jqgrid and I have learn many things through your answer.
Now I have a problem: I want to upload files when adding or modifying records to a jqgrid?

This is my code:

    name: 'File',
    index: 'file',
    hidden: true,
    enctype: "multipart/form-data",
    editable: true,
    edittype: 'file',
    editrules: {
        edithidden: true,
        required: true
    formoptions: {
        elmsuffix: '*'

However the field I got in controller always be null :(. Any suggestion
Anyone know working example?
Thanks in advance

I have found a very good example at http://tpeczek.codeplex.com/releases



I got it working just yesterday..here's my colModel column for file upload,

    name: 'fileToUpload',
    index: 'customer_id',
    align: 'left',
    editable: true,
    edittype: 'file',
    editoptions: {
        enctype: "multipart/form-data"
    width: 210,
    align: 'center',
    formatter: jgImageFormatter,
    search: false

You have to set afterSubmit: UploadImage. It uploads the file only after data has been post & response has come back. I'm checking here that if insert was succesfful then only start upload else show error. I've used Jquery Ajax File Uploader.

function UploadImage(response, postdata) {

    var data = $.parseJSON(response.responseText);

    if (data.success == true) {
        if ($("#fileToUpload").val() != "") {

    return [data.success, data.message, data.id];


function ajaxFileUpload(id) 
    .ajaxStart(function () {
    .ajaxComplete(function () {

            url: '@Url.Action("UploadImage")',
            secureuri: false,
            fileElementId: 'fileToUpload',
            dataType: 'json',
            data: { id: id },
            success: function (data, status) {

                if (typeof (data.success) != 'undefined') {
                    if (data.success == true) {
                    } else {
                else {
                    return alert('Failed to upload logo!');
            error: function (data, status, e) {
                return alert('Failed to upload logo!');
    )          }                                                                                            


Recent Questions

Top Questions

Home Tags Terms of Service Privacy Policy DMCA Contact Us

©2020 All rights reserved.