How to add custom buttons to JqGrid add/edit forms?

javascript, jqgrid, jquery

Solution

jqGrid has some CSS classes which will be used for buttons. You can add new button inside of beforeShowForm callback for example:

$.extend($.jgrid.edit, {
    bSubmit: "Save and Close",
    bCancel: "Cancel",
    width: 370,
    recreateForm: true,
    beforeShowForm: function () {
        $('<a href="#">Save and New<span class="ui-icon ui-icon-disk"></span></a>')
            .click(function() {
                alert("click!");
            }).addClass("fm-button ui-state-default ui-corner-all fm-button-icon-left")
              .prependTo("#Act_Buttons>td.EditButton");
    }
});

See the demo:

Problem

Is it possible to add custom buttons to a JqGrid add/edit form? Instead of just submit and cancel, I wanted to have a button that says "Save and New", one that says "Save and Close", and one that says "Cancel". Is it possible to achieve this?

Original source