PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (10): В начало « ... 2 3 4 5 [6] 7 8 9 10 »
Найдено сообщений: 147
Давит
Отправлено: 26 Июня, 2011 - 20:03:30 • Тема: select • Форум: JavaScript & VBScript
Ответов: 8 Просмотров: 2774
вот
Спойлер (Отобразить ) CODE (
htmlphp ):
скопировать код в буфер обмена
< script type= "text/javascript" src= "./linkedselect.js" ></ script>
</ script>
< form action= "" method= "post" >
< table border= "0" >
< tr> < td> Тип 1</ td> < td> Тип 2</ td> < td> Тип 3</ td>< td></ td></ tr>
< tr>< td>
< select name= "obj" id= "List1" >
< option value= "1_1" > Квартиры и таунхаусы</ option>
< option value= "1_2" > Дома</ option>
</ select></ td>< td>
< select disabled= "disabled" name= "region" id= "List2" ></ select></ td>< td>
< select disabled= "disabled" name= "price" id= "List3" ></ select></ td>< td>
< input type= "hidden" name= "op" value= "go" />
< input type= "submit" value= "Поиск" /></ td></ tr></ table>
< script type= "text/javascript" >
var syncList1 = new syncList;
syncList1. dataList = {
/* Определяем элементы второго списка в зависимости от выбранного значения в первом списке */
'1_1' : {
'2_1_0' : 'Любой Регион' ,
'2_1_1' : 'Баошичи' ,
'2_1_2' : 'Биела'
} ,
'1_2' : {
'2_2_0' : 'Любой Регион' ,
'2_2_1' : 'aaa' ,
'2_2_2' : 'ddd'
} ,
/* Определяем элементы третьего списка в зависимости от выбранного значения во втором списке */
'2_1_0' : { '3_01' : 'Любая' , '3_1' : 'До 100 000 евро' , '3_2' : '100 000 - 250 000 евро' , '3_3' : 'Свыше 250 000 евро' } ,
'2_1_1' : { '3_3_0' : 'fdgdf' , '3_3_01' : 'ddddddd' , '3_3_02' : 'dddddd' } , '2_1_2' : { '3_3_0' : 'bbb' , '3_3_01' : 'nnnnn' , '3_3_02' : 'kkk' } , '2_1_3' : { '3_3_0' : 'Любая цена' } ,
'2_2_0' : { '3_02' : 'Любая' , '3_4' : 'до 300 000 евро' , '3_5' : '300 000 - 500 000 евро' , '3_6' : 'более 500 000 евро' } ,
'2_2_1' : { '3_3_0' : 'Любая цена' } , '2_2_2' : { '3_3_0' : 'Любая цена' } , '2_2_3' : { '3_3_0' : 'Любая цена' } ,
} ;
// Включаем синхронизацию связанных списков
syncList1. sync( "List1" , "List2" , "List3" ) ;
</ script>
</ form>
</ div>
linkedselect.js
Спойлер (Отобразить ) CODE (
javascript ):
скопировать код в буфер обмена
// JavaScript Document
function syncList( ) { } //Определяем функцию конструктор
//Определяем методы
//Метод sync() - принимает список из значений атрибутов id элементов SELECT, образующих связанный список и запускает их синхронизацию
syncList.prototype .sync = function ( )
{
//Перебираем аргументы (id элементов SELECT) и назначаем событиям onChange селектов, с соответствующими id, функцию-обработчик.
//В качестве обработчика выступает второй метод объекта syncList - _sync (напрямую его вызывать не нужно)
//Обработчик назначается всем элементам SELECT кроме последнего в списке аргументов, т.к. последний не влияет ни на какой другой элемент SELECT и с ним не нужно синхронизироваться.
for ( var i= 0 ; i < arguments.length - 1 ; i++ ) document.getElementById ( arguments[ i] ) .onchange = ( function ( o, id1, id2) { return function ( ) { o._sync( id1, id2) ; } ; } ) ( this , arguments[ i] , arguments[ i+ 1] ) ;
document.getElementById ( arguments[ 0] ) .onchange ( ) ; //запускаем обработчик onchange первого селекта, чтобы при загрузке страницы заполнить дочерние селекты значениями.
}
//служебный метод _sync - срабатывает при смене выбранного элемента в текущем (старшем) элементе SELECT (по его событию onChange) и изменяет содержимое зависимого селекта на основании значения выбранного в старшем селекте.
syncList.prototype ._sync = function ( firstSelectId, secondSelectId)
{
var firstSelect = document.getElementById ( firstSelectId) ;
var secondSelect = document.getElementById ( secondSelectId) ;
secondSelect.length = 0 ; //обнуляем второй (подчиненный) SELECT
if ( firstSelect.length > 0 ) //если первый (старший) SELECT не пуст
{
//из свойства dataList, с данными для заполнения подчиненных селектов, берем ту часть данных, которая соответствует именно значению элемента,
//выбранного в первом селекте, и определяет содержимое подчиненного элемента SELECT.
var optionData = this .dataList [ firstSelect.options [ firstSelect.selectedIndex ==- 1 ? 0 : firstSelect.selectedIndex ] .value ] ;
//заполняем второй (подчиненный) селект значениями (создаем элементы option)
for ( var key in optionData || null ) secondSelect.options [ secondSelect.length ] = new Option( optionData[ key] , key) ;
//если в старшем SELECT-е нет выделенного пункта, выделяем первый
if ( firstSelect.selectedIndex == - 1) setTimeout( function ( ) { firstSelect.options [ 0] .selected = true ; } , 1 ) ;
//если во втором списке нет выделенного пункта, выделяем первый его пункт
if ( secondSelect.length > 0) setTimeout( function ( ) { secondSelect.options [ 0] .selected = true ; } , 1 ) ;
}
//если второй (подчиненный) селект имеет в свою очередь свои подчиненные селекты (те, для которых он главный),
//то запускаем его обработчик onchange, чтобы изменить его подчиненные селекты
secondSelect.onchange && secondSelect.onchange ( ) ;
} ;
Давит
Отправлено: 26 Июня, 2011 - 17:50:43 • Тема: select • Форум: JavaScript & VBScript
Ответов: 8 Просмотров: 2774
код в первом посте, лишь часть скрипта
до его и после его есть JS коди касательно селектам.
Ваш код работает,
а когда его подключаю к скрипте, не работает
Давит
Отправлено: 26 Июня, 2011 - 17:28:54 • Тема: select • Форум: JavaScript & VBScript
Ответов: 8 Просмотров: 2774
здесь я вложил толок кусок кода.
Карадаг одело смотру Это код работает,
А по другому не как?
пример таково вида
Давит
Отправлено: 26 Июня, 2011 - 15:05:52 • Тема: select • Форум: JavaScript & VBScript
Ответов: 8 Просмотров: 2774
нет нужно чтобы
из вначале активно первый селект, а второй селект неактивны
когда выбираем значения из первого селекта, второй селект должно бит активным
Давит
Отправлено: 26 Июня, 2011 - 13:02:03 • Тема: PHP • Форум: Прочее
Ответов: 21 Просмотров: 137
leon1993
hmtl CSS немного изучите
Давит
Отправлено: 26 Июня, 2011 - 11:55:28 • Тема: select • Форум: JavaScript & VBScript
Ответов: 8 Просмотров: 2774
Есть 2 селести.
надо сделать так чтобы при выборе первого селекта бил активно второй селект
CODE (
html ):
скопировать код в буфер обмена
<form action = "" method = "post" >
<select name = "obj" id = "List1" >
<option value = "1_1" > Квартиры и таунхаусы</ option >
<option value = "1_2" > Дома</ option >
</ select >
<select name = "obj" id = "List2" >
<option value = "2_1" > таунхаусы</ option >
<option value = "2_2" > Дома</ option >
</ select >
</ form >
Давит
Отправлено: 21 Июня, 2011 - 20:56:18 • Тема: Проблема с наложением блоков • Форум: HTML, Дизайн & CSS
Ответов: 4 Просмотров: 2376
если так ?
CODE (
htmlphp ):
скопировать код в буфер обмена
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
< html>
< head>
< title> Untitled</ title>
< style type= "text/css" >
#div { display:block; width:10;}
#div:hover UL {
display: block; /* При выделении пункта курсором мыши отображается подменю */
margin- top: 0 ;
border: solid 1px #999;
}
#ul {
list- style: none; /* Для списка убираем маркеры */
margin: 0 ; /* Нет отступов вокруг */
padding: 0 ; /* Убираем поля вокруг текста */
font- family: Arial, sans- serif; /* Рубленый шрифт для текста меню */
font- size: 10pt; /* Размер названий в пункте меню */
background- color: #F9F9F9;
position: absolute; /* Подменю позиционируются абсолютно */
display: none; /* Скрываем подменю */
margin- left: 0px; /* Сдвигаем подменю вправо */
margin- top: 3px; /* Сдвигаем подменю вверх */
}
#div_a {
width: 100%; /* Ширина меню */
font- family: Arial, sans- serif; /* Рубленый шрифт для текста меню */
font- size: 10pt; /* Размер названий в пункте меню */
font- weight: 800 ;
text- decoration: none; /* Подчеркивание у ссылок убираем */
color: #666; /* Цвет текста */
}
#div_a:hover {color: #00F; /* Цвет текста активного пункта */}
#li_a {
display: block;
padding: 3 ;
text- decoration: none; /* Подчеркивание у ссылок убираем */
color: #666; /* Цвет текста */
font- size: 10pt;
font- weight: 600 ;
}
#li_a:hover {color: #00F; /* Цвет текста активного пункта */}
#b {font-size:1.5em;}
</ style>
</ head>
< body>
< div id= "div" >< a id= "div_a" > text1</ a>
< ul id= "ul" >
< b> text2</ b>
< li id= "li" >< a id= "li_a" href= "#" > page1</ a></ li>
< li id= "li" >< a id= "li_a" href= "#" > page2</ a></ li>
< li id= "li" >< a id= "li_a" href= "#" > page3</ a></ li>
</ ul>
</ div>
</ body>
</ html>
Страниц (10): В начало « ... 2 3 4 5 [6] 7 8 9 10 »
Powered by ExBB FM 1.0 RC1. InvisionExBB