msie и select

helm2004

Новичок
msie и select

Хелло пипл!!! У меня вот в чём вопрос: есть такой кусок скрипта -
for ( var i=0; i<daysInMonth; i++ ) {
$('d1').options=new Option( i+1 );
$('d2').options=new Option( i+1 );
}

Он динамически подгружает поля селект в опшин. Так вот ИЕ эти поля видит а получить значения я не могу(в нетскейпе получается). Может у когото есть решение?

Спасибо!!!
 

helm2004

Новичок
Re: Re: msie и select

Автор оригинала: dimagolov
а что делаешь для этого?
Здрасьте!!! Для получения значения есть у меня такая ф-ция
function $(id){
br_name=navigator.appName;
if(br_name='Netscape'){
return document.getElementById(id);
}else{
return document.all[id];
}
}
Может я не правильно получаю значения?
 

Zetruger

ivan.chistyakov.name
функ.
function $(id){
return document.getElementById(id);
}
просто не может НЕ работать!
это просто к вопросу о том что не надо использовать
document.all[id];


а поповоду select и option
вот тебе пример из MSDN

<SELECT ID="oSelect">
<OPTION VALUE="1">One</OPTION>
</SELECT>

<SCRIPT>
var oOption = document.createElement("OPTION");
oSelect.options.add(oOption);
oOption.innerText = "Two";
oOption.value = "2";
</SCRIPT>

вот он скорее всего будет работать только под IE
 

helm2004

Новичок
вот он скорее всего будет работать только под IE
А универсального ничего нет?
Так у меня элементы опшин показывает, а получить значения из них не могу. Может я не правильно вопрос задаю? Спасибо!
 

helm2004

Новичок
Автор оригинала: Zetruger
есть одно универсальное 100% решение это генерация options на стороне сервера
Решение очень хорошее, но мне нужно зделать так чтоб дни генерились динамично т.е. сколько дней в месяце столько опшин в елементе дни
 

Zetruger

ivan.chistyakov.name
зачем??? чтобы у пользователя не было возможности указать 31 февраля?

а что ты будешь делать если пользователь ручками модифицирует форму, сделает поле текстовым и введет недопустимое значение?

так что не мучайся с формой, а на сервере проверяй дату через checkdate
 

helm2004

Новичок
Я всё это понимаю, но у мне нужно вводить ещё и период, т.е. с 21-03-2001 по 24-03-2001 и в этих датах проверять период. В файрфоксе и опере работает все супер, а в ИЕ не могу получить значение
 

Zetruger

ivan.chistyakov.name
опять же мое мнение все что можно реализовать на стороне сервера, нужно делать именно там.
не стоит надеется на клиента!
 

Nutty

Новичок
ну привязались то...ну хочет на клиенте пускай на клиенте...возможность же есть.

function addoption(obj,value,name,selected)
{
var newopt=document.createElement('option');
newopt.setAttribute('value',value);
if (selected==value)
newopt.setAttribute('selected','selected');
newopt.innerHTML=name;
obj.appendChild(newopt);
}

ну а значение полчается opt.value.
 
Сверху