Отключение обновления сетки при выборе определенной строки

#c# #javascript #asp.net

#c# #javascript #asp.net

Вопрос:

Мне нужно отключить обновление в GridView при выборе определенной строки, поскольку она обновляет всю страницу, поскольку я каждый раз перезагружаю карту bing.

Я пробовал

 function showKeyCode(e) 
{
    var keycode = (window.event) ? event.keyCode : e.keyCode;
    if (keycode == 116) {
        event.keyCode = 0;
        event.returnValue = false;
        return false;
}
  

или

 OnClientClick = "javascript:return false;"
  

но это не помогает. Не могли бы вы помочь мне в этом?

Ответ №1:

Когда вы говорите «когда выбрана определенная строка», вы имеете в виду, что нажимаете на ссылку «Выбрать» в столбце или что-то подобное?

Я думаю, вам следует подробнее рассказать о своем GridView, чтобы узнать, почему существует страница postback .

РЕДАКТИРОВАТЬ: вот пример (проверьте ScriptManager и UpdatePanel)

 <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true">
    </asp:ScriptManager>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <asp:gridview runat="server" EnableModelValidation="True" ID="MyGrid">
            </asp:gridview>
        </ContentTemplate>
    </asp:UpdatePanel>
</form>
  

Надеюсь, это поможет

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

1. Ну, «Выбор» по умолчанию CommandField будет выполнять обратную передачу. Если вы запретите обратную передачу, строка не будет выбрана. Вы пытаетесь остановить выбор только определенной строки, проверив условие?

2. Нет. Я хочу иметь возможность выбирать требуемые данные строки, но я хочу отключить обратную передачу, поскольку она обновляет всю мою страницу, чего я не хочу, поскольку она перезагружает мою карту, которая теряет данные над ней.

3. Вы можете поместить свою сетку в ASP.NET Ajax UpdatePanel, тогда вся страница не будет отправляться обратно, обновится только UpdatePanel.

4. привет, спасибо за это, но есть ли сценарий по умолчанию, который я могу использовать для его работы, я получаю сообщение об ошибке «Для элемента управления с идентификатором ‘UpdatePanel1’ требуется ScriptManager на странице». можете ли вы мне помочь в этом?

5. @hesh Проверьте мой обновленный ответ. Я добавил пример, который показывает ScriptManager и UpdatePanel.