У меня есть JQGrid со скрытым столбцом, я бы хотел, чтобы данные в этом столбце отправлялись обратно на сервер, когда пользователь редактирует их в диалоговом окне редактирования.

В существующем виде, единственный способ увидеть эти данные формы в обратной передаче - это использовать свойство столбца Editable = true, однако при этом в диалоговом окне отображается поле ввода текста. С Editable = false поле ввода скрыто, но значение отсутствует в обратной передаче.

Отображение свойства в диалоговом окне редактирования не идеально, поскольку я не хочу, чтобы пользователь мог изменять значение, но мне нужно, чтобы оно было отправлено обратно на сервер по причинам бизнес-логики.

Любая помощь была бы признательна.

0
Apogee 26 Мар 2013 в 18:24
1
Вы отметили свой вопрос тегом jqgrid-asp.net, используете ли вы какую-либо вспомогательную библиотеку?
 – 
tpeczek
26 Мар 2013 в 18:46
Я использую MVC API, который поставляется с JQGrid, если вы об этом спрашиваете?
 – 
Apogee
26 Мар 2013 в 22:17
Сам jqGrid - это просто библиотека JavaScript, специального API для ASP.NET MVC не существует. Возможно, вы купили jqSuite у Trirand или используете какую-то другую библиотеку на стороне сервера. Ответ важен, потому что сценарий, который вы описали, должен работать из коробки, но если вы используете какую-то упаковочную библиотеку, она может делать какое-то короткое замыкание под капотом.
 – 
tpeczek
27 Мар 2013 в 12:29
Ну да ладно, в таком случае да, мы используем JQSuite. Извините за путаницу. К сожалению, это не совсем работает из коробки, так как я не могу найти способ скрыть столбец из сетки и диалогового окна редактирования, но все еще иметь значение в обратной передаче. Если вы можете указать мне на какую-либо документацию, описывающую это, я был бы признателен.
 – 
Apogee
27 Мар 2013 в 13:31
Итак, что происходит, когда вы определяете свой столбец следующим образом: new JQGridColumn { DataField = "FieldName", Hidden = true, Editable = true }
 – 
tpeczek
27 Мар 2013 в 13:59

1 ответ

Лучший ответ

Вы можете скрыть данные на стороне клиента с помощью $('#tr_<ColumnName>').hide(); Используйте его в соответствующих местах, например, в функциях ADD и EDIT JqGrid. Я решил проблему таким способом. Любое элегантное предложение приветствуется. P.S - Вообще-то заслуга моих одноклубников. Они нашли путь.

1
soham 16 Май 2014 в 17:35
Спасибо за ответ, похоже, это лучший способ решить проблему на данный момент.
 – 
Apogee
15 Май 2014 в 11:46