Помогите с аяксом.

N
На сайте с 14.06.2004
Offline
107
538

Есть селект select1 с обработчиком события

onchange='xajax_getList2(this.options[this.selectedIndex].value, \"city\");

В функции getList2 происходит вставка выбраного елемента в бд.

Как сделать чтобы при выполнении функции getList2 второй селект этой же формы select1 ставал невидимым, вернее строка таблицы в которой он находится получала свойство display:none/

Тоесть "невидимость" должна происходить именно из функции getList2

Вот мой код:


<tr><td><select name="select1" onchange='xajax_getList2(this.options[this.selectedIndex].value, \"city\");'></td></tr>
<tr><Td><select name="select2">...</select></td></tr>
F
На сайте с 22.12.2005
Offline
48
#1

Присвоить строке id:

Nicca:

<tr><td><select name="select1" onchange='xajax_getList2(this.options[this.selectedIndex].value, \"city\");'></td></tr>
<tr id="trd"><Td><select name="select2">...</select></td></tr>

В функции getList2:

document.getElementById('trd').style.display = 'none';

Но видимость/невидиимость строк таблиц через display работает не совсем корректно во всех браузерах

Наслаждение жизнью - это искусство
N
На сайте с 14.06.2004
Offline
107
#2

Я сделал так:


<div id="script">
</div>
...
<tr><td><select name="select1" onchange='xajax_getList2(this.options[this.selectedIndex].value, \"city\");'></td></tr>
<tr id="trd"><Td><select name="select2">...</select></td></tr>

И в скрипте:


$script="<script language=\"javascript\">document.getElementById('reg').style.display='none';</script>";
$objResponse->addAssign("script", "innerHTML", $script);

Но почему-то не работает..

F
На сайте с 22.12.2005
Offline
48
#3

А элемент с id="reg" у Вас где?

N
На сайте с 14.06.2004
Offline
107
#4

Сдесь:

<tr id="reg"><Td><select name="select2">...</select></td></tr>

Даже если просто написать такую стран ицу, то яваскрипт не работает:


<div id="script">
<script language="javascript">
this.document.getElementById('reg').style.display='block';
</script>
</div>

<table>
<tr id="reg"><Td>adsdasd</Td></tr>
</table>
[Удален]
#5

нет у tr стилей. можете для этого использовать tbody. innerHTML для таблиц тоже лучше не использовать - в IE крашится.

N
На сайте с 14.06.2004
Offline
107
#6

Хорошо сделаю все на дивах, но почему тогда не работает:

<script language="javascript">

document.getElementById('asd').style.display='none';

</script>

<div id="asd">adsdasd</div>

Ведь по идее ничего не должно выводить, а выводить

Ведь поидее ничего не должно выводить..

Nicca добавил 23.10.2008 в 16:19

Хорошо сделаю все на дивах, но почему тогда не работает:


<script language="javascript">
document.getElementById('asd').style.display='none';
</script>
<div id="asd">adsdasd</div>

Ведь по идее ничего не должно выводить, а выводит текст дива..

Ведь поидее ничего не должно выводить..

Brand from Amber
На сайте с 18.08.2007
Offline
293
#7

Нужно так:

<div id="asd">adsdasd</div>
<script language="javascript">
document.getElementById('asd').style.display='none';
</script>

Почему - догадайся сам.

Лучший способ понять что-то самому - объяснить это другому.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий