Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Криво работает <option>, созданный находу... (https://javascript.ru/forum/events/19066-krivo-rabotaet-option-sozdannyjj-nakhodu.html)

myaso 25.07.2011 11:58

Криво работает <option>, созданный находу...
 
ajax- ом получаю строку вида id1/Город1/id2/Город2...

function updatePage() 
{
  if (xmlHttp.readyState == 4) 
   {
    var response = xmlHttp.responseText;
    var CityArray = response.split('/');
    DeleteSelect();
    if (CityArray.length>0) { CreateSelect(response); }
   }
}

function CreateSelect(response)
{
    var ContentLink = document.getElementById( "country_city" );
    var Link = document.getElementById( "submit" );
    var sel = document.createElement("select");
    sel.setAttribute("id", "city");
    sel.setAttribute("name", "city");
    ContentLink.insertBefore( sel, Link ); 
    var CityArray = response.split('/');
    var q = CityArray.length-1;
    var SelectLink = document.getElementById( "city" );
    var opt = document.createElement("option");
    opt.setAttribute("value", 0);
    SelectLink.appendChild(opt);
    opt.innerHTML="Выберите город";
    for (j=0;j<q;)
    { 
      var opt = document.createElement("option");
      opt.setAttribute("value", CityArray[j]);
      SelectLink.appendChild(opt);
      opt.innerHTML=CityArray[j+1];
      j += 2;
    }
}


и все вроде бы нормально, но если выбираю самый первый город в списке(не "Выберите город", а именно верхний) форма отправляет 0, а в остальных случаях правильный id.

myaso 26.07.2011 08:58

Разобрался.


Часовой пояс GMT +3, время: 07:43.