title: how to use jqgrid extraParam parameter of saveRow
body: <p>where in one cell edittype is select with key value pair like below.</p>
  
  <pre><code> colModel: [
              {name: 'Code', index: 'Code', width: '16%', editable: true, sortable: true },
              { name: 'ABC', index: 'ABC', width: '16%', editable: true, edittype: "select", editoptions: { value: "FE:FedEx;TN:TNT"} },
              { name: 'Emailid', index: 'Emailid', width: '16%', editable: true, sortable: true },
              ],
  </code></pre>
  
  <p>Now while adding new row if i selected the <strong>FedEx</strong>  for <strong>ABC</strong> column it will send the FE to EditURL Link not <strong>FedEX</strong> so i want to send the FEDEX using extraParam to EditURL.</p>
  
  <p>So please anyone let me know how to implement it.</p>
  
  <p>For this my code is below</p>
  
  <p><strong>UPDATED CODE</strong></p>
  
  <pre><code>var grid = jQuery("#list5").jqGrid({
          url: '/home1/GetUserData',
          datatype: "json",
          mtype: "POST",
          colNames: ['Code', 'LoginID', 'Emailid'],
          colModel: [
                          {name: 'Code', index: 'Code', width: '16%', editable: true, sortable: true },
                          { name: 'LoginID', index: 'LoginID', width: '16%', editable: true, sortable: true },
                          { name: 'Emailid', index: 'Emailid', width: '16%', editable: true, edittype: "select", editoptions: { value: "FE:FedEx;TN:TNT"} },
                        ],
          rowNum: 10,
          autowidth: true,
          height: '100%',
          rowList: 10,
          pager: $("#pager2"),
          editurl: "/home1/EditUserData",
          onSelectRow: function (id) {
              if (id &amp;&amp; id !== lastsel2) {
                  if (id == "new_row") {
                      grid.setGridParam({ editurl: "/home1/InsertUserData" });
                  }
                  else {
                      grid.setGridParam({ editurl: "/home1/EditUserData" });
                  }
                  jQuery('#list5').restoreRow(lastsel2);
                  jQuery('#list5').jqGrid('editRow', id, true, pickdates);
                  $("#list5_ilsave").addClass("ui-state-disabled");
                  $("#list5_ilcancel").addClass("ui-state-disabled");
                  $("#list5_iladd").removeClass("ui-state-disabled");
                  $("#list5_iledit").removeClass("ui-state-disabled");
                  lastsel2 = id;
              }
          },
          caption: "Simple data manipulation"
      });
      jQuery("#list5").jqGrid('navGrid', '#pager2', { edit: false, add: false, del: true, search: false, refresh: false }, {}, {}, { url: '/home1/DeleteUserData' });
      jQuery('#list5').jqGrid('inlineNav', '#pager2', { edit: true, add: true, editParams: {extraparam: XYZ()}});
  });
  
  function XYZ()
  {
    // from here i want to return the text of combo of selected row.
  }
  </code></pre>
  
  <p><strong>Update code of Oleg</strong></p>
  
  <pre><code>var grid = jQuery("#list5"),
      editingRowId,
      myEditParam = {
          keys: true,
          oneditfunc: function (id) {
              editingRowId = id;
          },
          afterrestorefunc: function (id) {
              editingRowId = undefined;
          },
          extraparam: 
              // we get the text of selected option from the column
              // 'Emailid' and include the data as additional
              // parameter 'EmailidText'
             // EmailidText: function () {
               //   return $("#" + editingRowId + "_Emailid&gt;option:selected").text();
              //}
  // **my changes here bind ABC Function which return key , value pair of object** IS THIS POSSIBLE
             function () {
                 ABC(); 
              }
  
      };
  
  grid.jqGrid({
      url: '/home1/GetUserData',
      datatype: "json",
      ...
      onSelectRow: function (id) {
          var $this = $(this), gridIdSelector = '#' + $.jgrid.jqID(this.id);
          $this.jqGrid('setGridParam', {
              editurl: (id === "new_row" ?
                            "/home1/InsertUserData" :
                            "/home1/EditUserData")
          });
          if (editingRowId !== id) {
              $(gridIdSelector + "_iledit").click();
          }
      }
  });
  $grid.jqGrid('navGrid', '#pager',
      { edit: false, add: false, search: false, refresh: false},
      {}, {}, { url: '/home1/DeleteUserData' });
  
  // inlineNav has restoreAfterSelect: true per default so we don't need to call
  // restoreRow explicitly
  $grid.jqGrid('inlineNav', '#pager',
      { edit: true, add: true, editParams: myEditParam,
          addParams: {addRowParams: myEditParam } });
  </code></pre>