﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / Веб-программирование / JavaScript  / показать элементы в зависимости от значения select / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://www.relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Mon, 13 Oct 2008 20:37:09 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>Как вариант, хотя и не самый лучший, но рабочий...&lt;br&gt;[i]var n = parseInt(objSelect.value);&lt;br&gt;    var addHere = document.getElementById("addHere");[/i]&lt;br&gt;[b]document.getElementById("addHere").innerHTML="";[/b]&lt;br&gt;[i]    for (var i=0; i&amp;#60;n; i++)&lt;br&gt;    {[/i]</description><pubDate>Sat, 18 Aug 2007 14:02:15 GMT</pubDate><dc:creator>Vizlim</dc:creator></item><item><title>RE: показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>[b]2 bazile [/b]&lt;br&gt;Не могли бы вы подсказать, как заставить приведенный вами прмер работать отлько один раз, те при повторном выборе селекта с  name="n"  параграфы не добавлялись к предыдущим, а генерились заново?</description><pubDate>Sat, 18 Aug 2007 12:07:30 GMT</pubDate><dc:creator>slyend</dc:creator></item><item><title>RE: показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>Спасибо! буду пробовать, сообщу о своих успехах. &lt;br&gt;Да, генерить надо на лету. Причем у меня там будут не параграфы, а селекты. Соответственно назрел вопрос (может дурацкий), будут ли они (сгенеренные) учитываться при отправке всей формы (у меня заро-о-овая такая форма)?</description><pubDate>Sat, 18 Aug 2007 03:37:17 GMT</pubDate><dc:creator>slyend</dc:creator></item><item><title>RE: показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>[quote][b]bazile (17.08.2007)[/b][hr]&lt;br&gt;На твоем месте я бы постеснялся выкладывать такой код. 1) Кол-во элементов в select можно определить на лету с помощью свойства options.length. Задавать их кол-во константой выигрыша не дает и только усложняет поддержку. 2) В JavaScript не рекомендуется в цикле писать обращения к вложенным объектам (&amp;#100;ocument.form1.elements в твоем примере).Их лучше кешировать во временной переменной. Это упрощает скрипти ускоряет его работу в длинных циклах. 3) Глобальных переменных лучше избегать, они тоже замедляют выполнение.[/quote]&lt;br&gt;&lt;br&gt;Признаю, что был неправ... "поспешишь людей насмешишь", вот теперь стыдно поторопился с ответом... Учту все замечания на будущее =))</description><pubDate>Fri, 17 Aug 2007 12:38:08 GMT</pubDate><dc:creator>Vizlim</dc:creator></item><item><title>RE: показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>2 slyend&lt;/P&gt;&lt;P&gt;Если я правильно понял твой вопрос тебе нужно создавать теги &amp;lt;P&amp;gt; на лету. Вот пример как это сделать:&lt;/P&gt;&lt;P&gt;[code]&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&lt;BR&gt;&amp;lt;title&amp;gt;Тест&amp;lt;/title&amp;gt;&lt;BR&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=windows-1251"&amp;gt;&lt;BR&gt;&amp;lt;script language="javascript" type="text/javascript"&amp;gt;&lt;BR&gt;function createElements(objSelect) {&lt;BR&gt;    var n = parseInt(objSelect.value);&lt;BR&gt;    var addHere = &amp;#100;ocument.getElementById("addHere");&lt;BR&gt;    for (var i=0; i&amp;lt;n; i++)&lt;BR&gt;    {&lt;BR&gt;        var objP = &amp;#100;ocument.createElement("P");&lt;BR&gt;        var txt = &amp;#100;ocument.createTextNode("параграф #"+(i+1));&lt;BR&gt;        objP.appendChild(txt);&lt;BR&gt;        addHere.appendChild(objP);&lt;BR&gt;    }&lt;BR&gt;}&lt;BR&gt;&amp;lt;/script&amp;gt;&lt;BR&gt;&amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;&lt;BR&gt;&amp;lt;form&amp;gt;&lt;BR&gt;&amp;lt;select name="n" &amp;#111;nchange="createElements(this)"&amp;gt;&lt;BR&gt;&amp;lt;option value="1"&amp;gt;добавить 1&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="2"&amp;gt;добавить 2&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="3"&amp;gt;добавить 3&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="4"&amp;gt;добавить 4&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="5"&amp;gt;добавить 5&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="6"&amp;gt;добавить 6&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="7"&amp;gt;добавить 7&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="8"&amp;gt;добавить 8&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="9"&amp;gt;добавить 9&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;option value="10"&amp;gt;добавить 10&amp;lt;/option&amp;gt;&lt;BR&gt;&amp;lt;/select&amp;gt;&lt;BR&gt;&amp;lt;/form&amp;gt;&lt;BR&gt;&amp;lt;div id="addHere"&amp;gt;&amp;lt;/div&amp;gt;&lt;BR&gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;[/code]&lt;/P&gt;&lt;P&gt;2 Vizlim&lt;/P&gt;&lt;P&gt;На твоем месте я бы постеснялся выкладывать такой код. 1) Кол-во элементов в select можно определить на лету с помощью свойства options.length. Задавать их кол-во константой выигрыша не дает и только усложняет поддержку. 2) В JavaScript не рекомендуется в цикле писать обращения к вложенным объектам (&amp;#100;ocument.form1.elements в твоем примере). Их лучше кешировать во временной переменной. Это упрощает скрипт и ускоряет его работу в длинных циклах. 3) Глобальных переменных лучше избегать, они тоже замедляют выполнение.</description><pubDate>Fri, 17 Aug 2007 11:41:28 GMT</pubDate><dc:creator>bazile</dc:creator></item><item><title>RE: показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>[quote][b]slyend (16.08.2007)[/b][hr]Здраствуйте, подскажите, как моно осуществить следующее:&lt;br&gt;Есть селект со значениями от 1 до 10, в зависимости от того, какое выбрано у него значение, такое кол-во элементов появляется в коде (например &amp;lt;P&amp;gt;). Искал решение, но что-то так и не нашел.[/quote]&lt;br&gt;&lt;br&gt;&amp;#60;html&gt;&lt;br&gt;&amp;#60;head&gt;&lt;br&gt;&amp;#60;title&gt; &lt;/title&gt;&lt;br&gt;&amp;#60;script&gt;&lt;br&gt;var tegiz="&amp;#60;p&gt;",a,b;&lt;br&gt;function C() {&lt;br&gt;for (var i=0; i&lt;6; i++) {  // 6 - кол-во option&lt;br&gt;if (((document.form1.elements[0])[i]).selected) b=B(i)+((document.form1.elements[0])[i]).value;&lt;br&gt;}&lt;br&gt;alert(b); //Отображает теги... + значение option'a&lt;br&gt;}&lt;br&gt;&lt;br&gt;function B(num) {&lt;br&gt;a="";&lt;br&gt;for (var j=0;j&amp;#60;num;j++) a+=tegiz;&lt;br&gt;return a;&lt;br&gt;}&lt;br&gt;&amp;#60;/script&gt;&lt;br&gt;&amp;#60;/head&gt;&lt;br&gt;&amp;#60;body&gt;&lt;br&gt;&amp;#60;form name="form1"&gt;&lt;br&gt;&amp;#60;select name="forma" size=1 onChange="C()"&gt;&lt;br&gt;&amp;#60;option value=1&gt;тест 1&lt;br&gt;&amp;#60;option value=2&gt;тест 2&lt;br&gt;&amp;#60;option value=3&gt;тест 3&lt;br&gt;&amp;#60;option value=4&gt;тест 4&lt;br&gt;&amp;#60;option value=5&gt;тест 5&lt;br&gt;&amp;#60;option value=6&gt;тест 6&lt;br&gt;&amp;#60;/select&gt;&lt;br&gt;&amp;#60;/form&gt;&lt;br&gt;&amp;#60;/body&gt;&lt;br&gt;&amp;#60;/html&gt;</description><pubDate>Thu, 16 Aug 2007 17:40:53 GMT</pubDate><dc:creator>Vizlim</dc:creator></item><item><title>показать элементы в зависимости от значения select</title><link>http://www.relib.com/forums/Topic915375-10-1.aspx</link><description>Здраствуйте, подскажите, как моно осуществить следующее:&lt;BR&gt;Есть селект со значениями от 1 до 10, в зависимости от того, какое выбрано у него значение, такое кол-во элементов появляется в коде (например &amp;lt;P&amp;gt;). Искал решение, но что-то так и не нашел.</description><pubDate>Thu, 16 Aug 2007 14:08:50 GMT</pubDate><dc:creator>slyend</dc:creator></item></channel></rss>