получить 2 или более значений столбца в строке jqgrid - PullRequest
1 голос
/ 02 июля 2011

Есть ли способ получить значение первого столбца и значение второго столбца в строке jqgrid? Я использую этот код, чтобы получить первое значение строки в моей другой программе,

$("#tblTallySheet").jqGrid('getGridParam', 'selrow')

Это удалить данные из моей таблицы:

function tallyDelData(){
  var selected = $("#tblTallySheet").jqGrid('getGridParam', 'selrow');  
  var datas = {
    "SessionID": $.cookie("SessionID"),
    "operation": "delete",
    "keyFields": [{"name":"tallyDate", "value":selected}]
  };
  tallyUpdate(datas);
} 

function tallyUpdate(dat){
  $.ajax({
    type: 'GET',
    url: 'processjson.php?' + $.param({path:'tally/update',json:JSON.stringify(dat)}),
    dataType: primeSettings.ajaxDataType,
    success: function(data) {
      if ('error' in data)
      {
        showMessage('ERROR: ' + data["error"]["msg"]);
      }
      else{
        $('#tblTallySheet').trigger('reloadGrid'); 
      }
    }
  });
} 

Поскольку в моем первом столбце указана дата и существуют данные с одинаковой датой, я хотел бы знать, повлияет ли функция только на выбранную строку (примечание: есть несколько строк с одинаковой датой)?

Если выбор строки даты не подходит, я хочу получить вторые значения, которые являются номером доски (поскольку моя программа не может иметь два одинаковых номера доски в одну и ту же дату). Но как я могу это сделать?

Пожалуйста, помогите ...

1 Ответ

1 голос
/ 02 июля 2011

Вы можете использовать метод getCell , чтобы получить ячейку, идентифицированную по имени столбца индекса столбца. Чтобы получить содержимое всех столбцов строки, вы можете использовать метод getRowData .

Метод $('#tblTallySheet').trigger('reloadGrid'), который вы используете в коде, перезагружает полную сетку, а не выбранную строку. Если вам нужно обновить только одну строку, вы можете использовать setRowData.

В настоящее время вы отправляете на сервер только идентификатор выбранной строки без каких-либо данных. Это то, что вы хотите или хотите включить в объект datas дополнительную информацию? Я рекомендую вам дополнительно использовать cache:false параметр $. Ajax , чтобы быть уверенным, что вы действительно что-то завершаете с сервером и не используете предыдущий ответ сервера из кэша. В настоящее время в Internet Explorer вы можете иметь проблему.

Чтобы дать вам больше советов, нужно увидеть контекст, в котором используется опубликованная вами функция.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...