【问题标题】:If DropDownList Selected Index Changed, hide gridview rows如果 DropDownList 选定索引已更改,则隐藏 gridview 行
【发布时间】:2011-05-20 05:09:52
【问题描述】:

如何在客户端调用事件 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

【问题讨论】:

  • 您必须提供更多信息,是的,可以做到,但您想隐藏什么?某些行,整个网格?
  • 如果下拉列表被更改,则隐藏 gridview 行。我想在客户端执行此操作,javascript 应该如何?
  • @TBohnen 只是一些特定的行。我相信我已将其包含在主题标题中。
  • 您知道在选定索引更改时要隐藏的行索引吗?

标签: javascript jquery asp.net gridview drop-down-menu


【解决方案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>

【讨论】:

  • @Muhammad 是否可以隐藏动态行?或者更像这样:当 selectedvalue = 2 时隐藏多行等等。
  • @Pod;是的,但是您需要将 RowIndex 传递给您的 javascript 方法。
  • @muhammad 如何将值传递给 javascript 方法?它像 c# 吗?更新(选定值,行隐藏)?
  • 您的 dropdwon 是否在 gridview 行内,您要在哪个 Selected 值上隐藏行?
  • @muhammad no gridview 和下拉控件是分开的
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多