1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Выбор географического месторасположения

Тема в разделе "HTML, CSS, XML, JavaScript", создана пользователем chuvash, 2 авг 2005.

Статус темы:
Закрыта.
  1. chuvash

    chuvash Гость

    Репутация:
    0
    Может кто знает, где можно было бы достать систему выбора географического месторасположения?
    Потому-что вручную - ну очень долго. ;)
     
  2. Vagor.ini

    Vagor.ini Гость

    Репутация:
    0
    Для: chuvash
    Что это такое? Задание координат?
     
  3. chuvash

    chuvash Гость

    Репутация:
    0
    Да, просто опции выбора места проживания. Человек заходит на сайт, и выбирает сначала - страну, потом - регион и родной город.
     
  4. Vagor.ini

    Vagor.ini Гость

    Репутация:
    0
    Ну так сразу и говорил, что на сайте. Лови скрипт, модифицируешь (регион), вставишь свои страны и города и работай:unsure:
    Код:
    <!-- Данный скрипт при правильной настройке селектирует второй combobox относительно первого -->
    <html>
    <head>
    
    <title>Тест</title>
    
    <script language="Javascript">
    
    function cGorod(strana_in, gorod_in)
    {
       this.gorod = gorod_in;
       this.strana = strana_in;
    }
    
    Strani = new Array();
    Strani["1"] = "Беларусь";
    Strani["2"] = "Россия";
    Strani["3"] = "Украина";
    
    Goroda = new Array();
    Goroda["Витебск"] = new cGorod(1,'Витебск');
    Goroda["Гродно"] = new cGorod(1,'Гродно');
    Goroda["Минск"] = new cGorod(1,'Минск');
    Goroda["Москва"] = new cGorod(2,'Москва');
    Goroda["Санкт-Петербург"] = new cGorod(2,'Санкт-Петербург');
    Goroda["Нижний Новгород"] = new cGorod(2,'Нижний Новгород');
    Goroda["Донецк"] = new cGorod(3,'Донецк');
    Goroda["Киев"] = new cGorod(3,'Киев');
    Goroda["Одесса"] = new cGorod(3,'Одесса');
    
    function addgorod(key)
    {
    document.searchfrm.gorod.length++;
    document.searchfrm.gorod[document.searchfrm.gorod.length-1].text = gorod[key];
    document.searchfrm.gorod[document.searchfrm.gorod.length-1].value = key;
    }
    
    
    function chkkeyword(words,word) {
    for(a in words) {
     if(words[a]==word)
     	{
     	return true;
     	}
    }
    return false;
    }
    
    function checkall(strana,gorod,i)
    {
     if (strana=="")
      {
     if(chkkeyword(Goroda[i].gorod,gorod) || gorod==999)
     return true;
     }// end if
    
     else {
     if (Goroda[i].strana==strana || strana==999)
     if(Goroda[i].gorod==gorod || gorod==999)
     	return true;
     }//end else
     return false;
    }
    
    function creategorod(strana,gorod)
    {
    document.searchfrm.gorod.length=2;
    document.searchfrm.gorod[0].value = 999;
    document.searchfrm.gorod[0].text  = "все";
    k=1;
    for (i in Goroda)
     {
      if (checkall(strana,999,i))
       {
     document.searchfrm.gorod[k].value=i;
     document.searchfrm.gorod[k].text=Goroda[i].gorod;
     document.searchfrm.gorod.length=k+2;
     k++;
       }
     }
     document.searchfrm.gorod.length=k;
    }
    
    function createstrana(strana,gorod)
    {
    document.searchfrm.strana.length=2;
    document.searchfrm.strana[0].value = 999;
    document.searchfrm.strana[0].text  = "все";
    k=1;
    for (i in Goroda)
     {
            
     if (checkall(999,gorod,i))
       {if (document.searchfrm.strana[k-1].text!=Strani[Goroda[i].strana])
         {
     document.searchfrm.strana[k].value=Goroda[i].strana;
     document.searchfrm.strana[k].text=Strani[Goroda[i].strana];
     document.searchfrm.strana.length=k+2;
     k++;
     }
          } //end if
    
      }//end for
    
    document.searchfrm.strana.length=k;
    }
    
    function reselect(field,check)
    {
    for (i=0;i<=field.length-1;i++)
     {
     if (field[i].value==check)
     	{
     field.selectedIndex = i;
     }
    }
    }
    
    function change(what)
    {
    var selectedStrana = document.searchfrm.strana[document.searchfrm.strana.selectedIndex].value;
    /*tmp = document.searchfrm.gorod.selectedIndex;
    if(tmp >= 0)
     selectedGorod = document.searchfrm.gorod[tmp].value;
    else selectedGorod = 0;*/
    var selectedGorod =  document.searchfrm.gorod[document.searchfrm.gorod.selectedIndex].value;
           
    createstrana(selectedStrana,selectedGorod);
    creategorod(selectedStrana,selectedGorod);
                     
    reselect (document.searchfrm.strana,selectedStrana);
    reselect (document.searchfrm.gorod,selectedGorod);
    
    }
    
    function makelist()
    {
    document.searchfrm.strana.length = 1;
    document.searchfrm.strana[0].value = 999;
    document.searchfrm.strana[0].text = "все";
    
    for(i in Strani)
    {                                                     
     document.searchfrm.strana.length++;
     l = document.searchfrm.strana.length;
     document.searchfrm.strana[l-1].value = i;
     document.searchfrm.strana[l-1].text = Strani[i];
    }
    }
    
    </script>
    
    </head>
    
    <br>
    
    <form method=GET action="search.cgi" name="searchfrm">
    <b>Страна:</b>
    <BR>
    <select style="width: 150" name=strana onChange="change()" size="1">
    <option value="999">** Ошибка **</option>
    <option value=*></option>
    </select>
    <BR>
    <b>Город:</b><BR>
    <select style="width: 150" name=gorod onChange="change()">
    <option value="999">** Ошибка **</option>
    <option value=*></option>
    </select>
    
    </form>
    
    <script language="JavaScript">
    <!--
    makelist();
    change();
    //-->
    </script>
    
    </body>
    
    </html>
     
  5. Silaev

    Silaev Гость

    Репутация:
    0
    ДВС!
    А как в данном скрипте прописать чтоб при выборе, например, "Беларусь" -> "Минск" он автоматически загружал, например, страничку "minsk.htm"?
     
  6. Andrew Stephanoff

    Andrew Stephanoff Гость

    Репутация:
    0
    Код:
    .onclick = function() {...}
     
  7. Silaev

    Silaev Гость

    Репутация:
    0
    Для: Andrew Stephanoff
    Чета я туплю...
    Куда подставлять эту функцию? И где в ней адрес странички прописывать?
     
  8. Tisha

    Tisha Гость

    Репутация:
    0
    2 Silaev

    Функцию нужно поставить в тот элемент формы, где в происходит выбор города.

    А описать ее нужно там, где и все остальные функции - в head документа или в файле, где эти скрипты хранятся.

    В саму функцию нужно вставить код, который открывает нужную тебе тсраницу
     
Загрузка...
Похожие Темы - Выбор географического месторасположения
  1. Mr.Grizzzly
    Ответов:
    3
    Просмотров:
    93
  2. maksiiimka
    Ответов:
    7
    Просмотров:
    294
  3. barni_ls
    Ответов:
    0
    Просмотров:
    280
  4. sado20
    Ответов:
    14
    Просмотров:
    801
  5. a113
    Ответов:
    16
    Просмотров:
    833
Статус темы:
Закрыта.

Поделиться этой страницей