Если выбранный индекс DropDownList изменен, скрыть строки сетки

Как вызвать событие dropdownlist.selectedindex.changed на стороне клиента?

Можно ли это сделать с помощью javascript/jquery?

Что я должен включить в разметку, чтобы включить javascripts?

<%@ Page Title="Report" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Report.aspx.cs" Inherits="Report" %>

 <%@ PreviousPageType VirtualPath="~/Top.aspx" %>

Я хотел сделать что-то вроде этого

IF SelectedValue = 2, Hide Row 1,2,3, and 4
IF SelectedValue = 3, Hide Row 11,21,31, and 41

person Pod Mays    schedule 20.05.2011    source источник
comment
Вам придется дать немного больше информации, да, это можно сделать, но что вы хотите скрыть? определенные строки, вся сетка?   -  person TBohnen.jnr    schedule 20.05.2011
comment
если выпадающий список изменится, скройте строки gridview. я хочу сделать это на стороне клиента, как должен выглядеть javascript?   -  person Pod Mays    schedule 20.05.2011
comment
@TBohnen только некоторые определенные строки. Я считаю, что включил это в название темы.   -  person Pod Mays    schedule 20.05.2011
comment
Знаете ли вы индекс строки, который вы хотите скрыть при изменении выбранного индекса?   -  person Muhammad Akhtar    schedule 20.05.2011


Ответы (1)


Вы можете прикрепить событие onchange к javascript в раскрывающемся списке. Затем всякий раз, когда ваш selected Index changes будет срабатывать и вызывать метод javascript update, в котором вы можете скрыть эту конкретную строку.

<asp:DropDownList ID="ddl" onchange="javascript:update();"

вот код JavaScript

<script language="javascript" type="text/javascript">
    function update() {
        var ri = 2; // I suppose that you know the Index of Row Which you want to hide
        var grd = document.getElementById('<%= grd.ClientID %>');
        grd.rows[ri].style.display = 'none';
    }

</script>
person Muhammad Akhtar    schedule 20.05.2011
comment
@Muhammad, можно ли скрыть динамические строки? или что-то вроде этого: скрыть несколько строк, когда selectedvalue = 2 и так далее. - person Pod Mays; 20.05.2011
comment
@под; да, но вам нужно передать RowIndex вашему методу javascript. - person Muhammad Akhtar; 20.05.2011
comment
@muhammad, как передать значение методу javascript? это как с#? обновить (выбранное значение, скрыть строку)? - person Pod Mays; 20.05.2011
comment
Ваш dropdwon находится внутри строки gridview, в которой выбранное значение вы хотите скрыть? - person Muhammad Akhtar; 20.05.2011
comment
@muhammad нет, элементы управления gridview и выпадающего списка разделены - person Pod Mays; 20.05.2011
comment
Я вижу в вашем вопросе, вы знаете строки, которые хотите скрыть. Но если вы хотите перейти к методу JS, вы можете перейти к отдельной команде, например. update('1,2,3,4,5'), а затем в методе JS вы можете разделить значения в массиве, а также перебрать и скрыть строки. - person Muhammad Akhtar; 20.05.2011
comment
@muhammad я раньше не использовал javascript, можешь привести пример? stackoverflow.com/questions/6068348/ - person Pod Mays; 20.05.2011