GridView OnSelectedIndexChanged вызывает функцию JavaScript

Можно ли вызвать функцию JS для события SelectedIndexChanged объекта GridView? Я сослался на эти 2 ТАКИХ поста - пост 1 и пост 2, которые касаются этого, но они не помогают.

Я старался

OnSelectedIndexChanged="selectedindexchanged()"

однако взамен я получил -

'ASP.default_aspx' does not contain a definition for 'selectedindexchanged' and no 
extension method 'selectedindexchanged' accepting a first argument of type  
'ASP.default_aspx' could be found (are you missing a using directive or an 
assembly reference?)

Может ли кто-нибудь подтвердить, можно ли это сделать и может ли это быть правильным способом?

2 ответа

Решение

OnSelectedIndexChanged это событие сервера, а не событие javascript.

Управление сервером GridView не позволяет подключать готовые методы javascript.

Вам необходимо расширить его и создать такие методы или использовать другой Grid Control, доступный в качестве стороннего разработчика.


То, что вы можете сделать, чтобы в коде не было ничего сложного, это, например, с помощью jQuery подключить все строки и вызвать событие, когда что-то в этой строке было щелкнуто, удерживая возврат (представление Форма обратно на сервер).

Для этого вам нужно посмотреть, что является выходным HTML и начать с него.

Это была одна из многих функций, которые я перешел в MVC вместо того, чтобы продолжать использовать WebForms, в MVC вы имеете полный контроль над тем, что происходит на вашей странице, и вы можете делать все самостоятельно, даже не задумываясь о таких вещах.

Используйте Row Data Bound Event, чтобы связать вашу функцию Java-скрипта,

protected void myGridView_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DataRowView drv = (DataRowView)e.Row.DataItem;
                e.Row.Attributes.Add("onclick", "selectedindexchanged()");
            }
        }

Теперь, когда вы нажимаете на строку вида сетки, selectedindexchanged будет называться.

Другие вопросы по тегам