Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > FF не видит подгружаемый AJAX select


Автор: PHPaNT 29.9.2007, 20:10
есть два селекта, в зависимости от выбора в первом селекте (type_id), аяксом подгружается второй (brand_id)

после выбора во втором селекте аяксом подгружаются данные

в IE все работает, в FF - нет

document.order.brand_id.value оказывается пустым

для работы с аяксом используется класс clsJSPHP

буду благодарен, если кто-нибудь предложит решение

Автор: dsCode 29.9.2007, 22:24
PHPaNT, 
Цитата(PHPaNT @  29.9.2007,  20:10 Найти цитируемый пост)
document.order.

это кто?

Каким образом данные добавляются во второй селект? Покажите код и то, что возвращает запрос.

Автор: PHPaNT 29.9.2007, 22:52
document.order
order - это имя формы
второй селект загружается в див

Код

<form method="POST" name="order">
Продукция
<select name="type_id" onChange="jsphp_shtml('catalog','brands','type_id='+this.value+'&act=brands');"><option>';
<option value="id1">PROD1
<option value="id2">PROD2
</select>
Фирмы
<div id="brands">
<select name="brand_id">
<option>[ выберите продукт ]
</select>
</div>

<input name="submit" type="submit">
</form>

Автор: smartov 29.9.2007, 23:05
PHPaNT, 
1) попробуй использовать w3c стандарты - document.getElementById вместо обрашения по именам.
2) возможно после того, как в селекте brand_id созданы значения IE выбирает первое автоматом, а mozilla не выбирает никакого. 
3) поставь расширение Firebug и после того, как отработает Аякс проверь в DOM-дереве - все ли нормально загрузилось в селект

Автор: SelenIT 29.9.2007, 23:28
document.forms["order"] - не совсем по стандарту, но по доброй вековой традиции поддерживается везде.

Автор: PHPaNT 30.9.2007, 02:34
Цитата

1) попробуй использовать w3c стандарты - document.getElementById вместо обрашения по именам.

помогло, спасибо

и еще вопрос, можно ли таким же образом получить доступ к массиву чекбоксов?
аналогичная проблема, FF не видит document.order["item[]"], если чекбоксы item[] загруженны аяксом
если я чекбоксам присвою id="item[]", как обращаться, что бы получить его значение и статус отмечен/не отмечен?

Автор: SelenIT 30.9.2007, 02:38
PHPaNT, используйте getElementsByName, он возвращает коллекцию элементов с заданным name.

Автор: PHPaNT 30.9.2007, 13:35
спасибо, smartov и SelenIT
постов наберу, плюсики поставлю smile

порекомендуйте справочник по javascript

Автор: smartov 1.10.2007, 11:00
PHPaNT, 
1) program.rin.ru (JavaScript слева в меню) -  сейчас почему то в дауне
2) http://developer.mozilla.org/en/docs/Main_Page

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)