У меня есть страница C# .NET, где я хочу, чтобы строки сворачивались при нажатии кнопки. Я нашел много руководств, подобных этому (http://codingforums.com/archive/index.php?t-90375.html), попытался реализовать их решения, но ни один из них ничего не сделал для меня, когда я нажимаю кнопку. Чтобы убедиться, что я не схожу с ума, я сделал небольшую тестовую страницу, чтобы проверить, работает ли идея. По какой-то причине это не так. Браузер - IE6. Я использую Visual Studio 2005. Кто-нибудь знает, почему это не работает? На обработанной странице отображается кнопка и строка текста, как я и ожидал; строка текста не исчезает, когда я нажимаю кнопку. Я знаю, что могу использовать div, но помните, что это всего лишь доказательство концепции; в моем реальном приложении должны разрушаться строки таблицы.
<%@ Page Language = "C#" AutoEventWireup = "true" CodeBehind = "Test.aspx.cs" Inherits = "Project.Web.Auth.Test" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns = "http://www.w3.org/1999/xhtml" >
<head id = "Head1" runat = "server">
<title>Shop Financials</title>
<link href = "../StyleSheets/ClaimsV2.css" rel = "stylesheet" type = "text/css" />
<script type = "text/javascript">
function btnClick(control)
{
try
{
var id_table = document.getElementById(control).style;
if (id_table.display == "block")
{
id_table.display = "none";
}
else
{
id_table.display = "block";
}
}
catch(e)
{
alert(e);
}
}
function toDepositPrinterFriendly()
{
}
</script>
</head>
<body>
<form id = "form1" runat = "server">
<table>
<tr>
<td><asp:Button runat = "server" OnClientClick = "javascript:btnClick('HeaderRow')"/></td>
</tr>
<tr id = "HeaderRow" runat = "server">
<td>TEST2</td>
</tr>
</table>
</form>
</body>
</html>





1) Дисплей (вероятно) изначально не блокируется. Пытаться:
if (id_table.display == 'none') { id_table.display = ''; } else { id_table.display = 'none'; }
2) Идентификатор элемента управления не будет таким, как вы думаете, благодаря Именование контейнеров. Проверьте свой HTML-код
Используя это доказательство концепции, я получил "настоящую" страницу, работающую :) Вы сделали этот понедельник гораздо менее болезненным ... Еще раз спасибо :)
Это исправило это. Он также выполнял обратную передачу, поэтому я добавил «return false;» в javascript. Большое спасибо!