Назад
Создание прибыльного бизнеспроекта на базе сайта

SEO + ASP.NET 4.0 + БИЗНЕСМОДЕЛЬ = ПРИБЫЛЬНЫЙ САЙТ

Инструмент быстрого построения прибыльного онлайн бизнеса своими силами без капиталовложений за 4 месяца все подробности на SEO + ASP.NET 4.0.

Подписка на рассылку

МАГИЯ C#!

Создание вебсайта с формой автоматического приема онлайн платежей по WebMoney!
Ваше имя
Ваш e-mail
Уроки по ASP.NET c# ADO.NET
     

18 видеоуроков
более 5 часов
по созданию сайта,
выполняющего
продажи ваших продуктов (физических/электронных) на полном автомате с личным оповещением на e-mail, а также ...
DVD-курс по C#, .NET

3 часть. Введение в ASP.NET. WebServices Профессиональная подготовка разработчика по языку C# на платформе .NET

asp.net webservices dvd c# gridview Гудок курс Более 65 подробных видео уроков по теоретическим основам технологии сайтостроения ASP.NET и процессу создания и использованию вебсервисов.

DVD-курс по C#, .NET

2А часть. XML/TXT в аспекте ADO.NET Профессиональная подготовка разработчика по языку C# на платформе .NET

xml txt dvd c# ADO ADO.NET Гудок курс 70 подробных видео уроков по работе с форматами xml, txt, по работе с файлами и директориями. Разработка высокоорганизованных свойств для значительного сокращения объема исходного кода и облегчения дальнейшей модификации и многое-многое другое...

DVD-курс по C#, .NET

1 часть. Windows Forms Профессиональная подготовка разработчика по языку C# на платформе .NET

Профессиональная подготовка на c# А. Гудок

185 подробнейших уроков (70 часов) лекций в формате видеоуроков по теории языка c# и платформы .NET. Практическое закрепление теоретического материала на примере создания Windows Forms - приложения видеоигры "Tanks"

DVD-курс по C#, .NET

2 часть. ADO.NET/SQL Профессиональная подготовка разработчика по языку C# на платформе .NET

Профессиональная подготовка на c# А. Гудок ADO.NET sql

165 подробных видео уроков по созданию приложений распределенных баз данных на примере разработки проектов с использований технологий ADO.NET (Connected model, Disconnected model, Typed DataSet, ...)


Я записываю курсы!
  Курс валют

НБУ курс евро






ASP.NET: Доступ к серверным элементам управления на клиенте. Управление видимостью серверных контролов на стороне клиента с помощью JavaScript



Если нам необходимо манипулировать на клиенте разметкой с помощью JavaScript, то для получения определенного контрола, мы используем метод document.getElementById("MyControlID_example"). Но в случае с серверными элементами управления такой фокус не пройдет, поскольку для любого серверного контрола с параметром runat="server", значение свойства ID в режиме выполнения кода имеет одно значение, например "MyControlID", А на клиенте тег для данного контрола будет иметь параметр id="ct100_maincontentplaceholder_ MyControlID", или еще что похлеще.

Для получения клиентского ID любого серверного контрола следует использовать свойство ClientID. Чаще, данным свойством пользуются в разметке страницы .aspx, а не в соответствующем бихайн-коде, хотя это дело привычки. В этом случае применяют блоки вставки выполняемого кода <%Response.Write() %>, или аналогичную сокращенную запись <%=%>.

Понимаю, сразу трудно все понять, поэтому осмыслим данную информацию на примере.

В данном примере мы поместим на веб-форму два серверных элемента управления: Image и CheckBox. По выбору CheckBox будем прятать/отображать изображение.

Поместим на форму следующую разметку:

<body>
   <form id="form2" runat="server">

      <asp:CheckBox runat="server" id="CheckboxHideShow"
          onclick="ShowHide()" Checked="true"
          ToolTip="Установите галочку если Вы хотите
              скрыть изображение" />

	<br />

      <asp:Image ID="MyImage" runat="server"
	    mageUrl="~/IMAGES/someImage.jpg" />
	    
	<hr />

   </form>
</body>

Имеем три элемента: CheckBox, Image и горизонтальную линию.

Для элемента CheckboxHideShow назначена клиентская функция onclick="ShowHude()", которая будет вызываться при выборе/снятии в CheckBox.

Вот и сам код функции:

<head id="Head1" runat="server">
 <title>Untitled Page</title>
 <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

    <script type="text/javascript" language="javascript">
    function ShowHide()
    {
        image_ = document.getElementById(
            "<%=MyImage.ClientID %>");
        
        checkBox_ = document.getElementById(
            "<%=CheckboxHideShow.ClientID %>");
        
        if (checkBox_.checked == true)
            {
                image_.style.display='block';
                
            }
        else
            {
                  image_.style.display='none';
            }
    }
    </script>

</head>

Как видите, записями
image_ = document.getElementById("<%=MyImage.ClientID %>");
checkBox_ = document.getElementById("<%=CheckboxHideShow.ClientID %>");
мы получаем требуемые контролы по их клиентским ID.

А дальше проверяем состояние CheckBox и, в зависимости от него, скрываем, или отображаем соответствующее изображение, применяя к нему соответствующее значение стиля:

if (checkBox_.checked == true)
{
    image_.style.display='block';
    
}
else
{
    image_.style.display='none';
}

Получение на клиенте ID серверного элемента управления ASP.NET

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

Если же нам требуется оставить место под картинку, тогда следует манипулировать заранее определенными пользовательскими классами стилей:

StyleSheet.css
.visibilityOn
{
	visibility: visible;
}
.visibilityOff
{
	visibility: hidden;
}

А в клиентской функции внести изменения:

if (checkBox_.checked == true)
{
    image_.className = 'visibilityOn';
}
else
{
    image_.className = 'visibilityOff';
}

Управление видимостью на клинтском JavaScript серверным элементом управления runat='server'

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



Больше информации читайте по теме:

ASP.NET - Программное изменение активной даты в контроле Calendar на с#
ASP.NET - использование Repeater с ObjectDataSource для вывода статей
c# - сортировка в GridView по нескольким столбцам
Вставка в GridView промежуточных (дополнительных) строк средствами c# (событие RowDataBound)
Получение объекта SessionState в обработчике запросов .ashx
Cross-Page Posting: Межстраничная отправка данных средствами ASP.NET (передача данных между страницами .aspx)
Динамическая генерация (автоматическое формирование) пути изображения с помощью хендлера .ashx
Скрытие пути изображения (защита изображения) ASP.NET
Установка капчи на сайте ASP.NET
Вставка (внедрение, подключение) кода JavaScript в страницу (разметку) ASP.NET
Отображение данных в GridView используя SqlDataSource
Типы проектов ASP.NET – Web Site и WebApplication
Семь важных фактов об ASP.NET



Оценить статью:

Оценивая статью, Вы подсказываете нам насколько данная информация стала полезной именно для Вас. Мы ожидаем, прежде всего, оценку доступности материала для понимания и простоты его изложения. Дополнительные комментари, вопросы, дополнения и замечания Вы можете указать на странице От Вас

Частичное, или полное копирование материала данной статьи возможно лишь при размещении ссылки на данную страницу.


            
        




Имя:  


Текст комментариев (не больше 600 знаков):  
введите не более 600 знаков



Введите символы с картинки:
Капча имеет "срок годности". Поэтому, если необходимо обновите страницу.



Сантехник срочно
c# курс Гудок   курс по ASP.NET Гудок   курс по ADO.NET Гудок   курс по XML txt Гудок   курс по рефлексии и многопоточности Гудок