Как мне отредактировать одну выбранную строку в GridView одним нажатием кнопки?

#c# #asp.net #visual-studio-2010

#c# #asp.net #visual-studio-2010

Вопрос:

У меня есть GridView с 4 столбцами, и я хотел бы отредактировать одну строку в выбранном столбце одним нажатием кнопки, я хочу заменить свое значение в столбце с ON на OFF, как указано на моей кнопке.

Итак, когда я нажимаю кнопку OFF, столбец «СТАТУС» будет изменен с ON на OFF.

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

Ответ №1:

Существует оооочень много руководств по этому вопросу.

Это одна из самых простых операций с GridView , вы когда-нибудь гуглили это?

Для начала вы можете посмотреть здесь, а затем узнать больше о том, что вы можете сделать с GridView здесь


Предполагая, что вы используете jQuery для упрощения кода

 <asp:button id="btnOnOff" 
            runat="server" 
            text="<# Eval("cellOnOff") %>"
            onclientclick="changeStatus(this, '<# Eval("cellOnOff") %>');" />
<asp:hidden id="hfId"
            value="<# Eval("cellId") %>" />
  

и затем

 var g_elem = '';

function changeStatus(elem, type) {

    g_elem = elem;

    // let's say we are changing
    $(elem).val("changing...");

    // let's get the id
    var id = $(elem).prent().find("#hfId").val();

    // let's send info to our page to precess and wait for an answer
    $.get('ajax/changeStatus.ashx', 
          { changeFrom: type, id: id },
          function(data) {
              // got the answer, let's show it
              $(g_elem).val(data);
          }
    );
}
  

и ваш обработчик просто получает id и changeFrom из строки запроса и отправляет обратно новое значение ON или OFF

Комментарии:

1. просто установите значение в javascript и отправьте асинхронный вызов, чтобы изменить значение в базе данных … или, что еще лучше, измените на changing... и, когда вы получите хороший ответ от асинхронного вызова, измените его на правильную операцию.

2. добавлена идея, лежащая в основе того, что я сказал выше.

Ответ №2:

вы можете сделать это в событии Gridviw_ItemCommand

Ответ №3:

Аналогичное решение для вашего вопроса https://softwarestech.wordpress.com/2013/08/09/get-selected-row-from-grid-to-textbox /