0

Hello,

I'm trying to edit data from a selected table row by using contextmenu. But when I try to select a row for edting instead the LAST DATA in a row will fetch.

Table:

<div class="container">
      <div class="row">
        <div class="col-md-12">
          <div class="table-responsive">
            <table id="ppmpsupplies" class="table table-bordered table-hover" cellspacing="0" width="100%">
              <thead>
                <tr>
                  <th>Code</th>
                  <th>General Description</th>
                  <th>Unit</th>
                  <th>Quantity</th>
                  <th>Estimated Budget</th>
                  <th>Mode of Procurement</th>
                  <th>Actions</th>

                </tr>
              </thead>
              <tbody>
                <?php foreach($items as $item){?>
                <tr>
                  <td>
                    <?php echo $item->id;?>
                  </td>
                  <td>
                    <?php echo $item->description;?>
                  </td>
                  <td>
                    <?php echo $item->unit;?>
                  </td>
                  <td>
                    <?php echo $item->quantity;?>
                  </td>
                  <td>
                    <?php echo $item->budget;?>
                  </td>
                  <td>
                    <?php echo $item->mode;?>
                  </td>

                  <td>
                    <button class="btn btn-warning" onclick="edit_item(<?php echo $item->id;?>)"><i class="glyphicon glyphicon-pencil"></i></button>
                    <button class="btn btn-danger" onclick="delete_item(<?php echo $item->id;?>)"><i class="glyphicon glyphicon-remove"></i></button>

                  </td>
                </tr>
                <?php }?>

              </tbody>
              <tfoot>
                <td colspan="3"></td>
                <td>Total</td>
                <td></td>
              </tfoot>
            </table>
          </div>
        </div>
      </div>
    </div>

contextmenu:

"edit": {
                              name: "Edit",
                              icon: "fa-pencil-square-o",
                              callback: function(itemKey, options) {                               
                                $('#ppmpsupplies').on('click', 'tr', edit_item( <?php echo $item->id ?> ));
                                // window.console && console.log(m) || alert(m);
                                return true;
                              }
                            },
                            sep4: "----",
                            "delete": {
                              name: "Delete",
                              icon: "fa-trash-o",
                              callback: function(itemKey, options) {
                                $('#ppmpsupplies tbody tr').on('click', delete_item(<?php print $item->id ?>));
                                var m = "clicked: " + itemKey;
                                window.console && console.log(m) || alert(m);
                                return true;
                              }
                            },

function:

 function edit_item(id) {
        save_method = 'update';
        $('#gcjform')[0].reset();
        $.ajax({
          url: "<?php echo site_url('ppmp/ajax_edit/')?>/" + id,
          type: "GET",
          dataType: "JSON",
          success: function(data) 
          {

            $('[name="id"]').val(data.id);
            $('[name="description"]').val(data.description);
            $('[name="unit"]').val(data.unit);
            $('[name="quantity"]').val(data.quantity);
            $('[name="budget"]').val(data.budget);
            $('[name="mode"]').val(data.mode);

            $('#gcjmodal').iziModal('open');
            $('#gcjmodal').iziModal('setTitle','Editor');
            $('#gcjmodal').iziModal('setSubtitle','Project Procurement Management Plan'); 
          },
          error: function(jqXHR, textStatus, errorThrown) {
            alert('Error get data from ajax');
          }
        });
      }

       function delete_item(id) {
        if (confirm('Are you sure delete this data?')) {
          $.ajax({
            url: "<?php echo base_url('ppmp/delete_item')?>/" + id,
            type: "POST",
            dataType: "JSON",
            success: function(data) {
              location.reload();
            },
            error: function(jqXHR, textStatus, errorThrown) {
              alert('Error deleting data');
            }
          });

        }
      }
1
Contributor
0
Replies
15
Views
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.