при первом выборе опции появляется список появляется тот который нужен.
но при второй смене браузеры начинают рассказывать мол orarios in not a function (объект не поддерживает метод или свойство), а как с этим бороться даже не представляю

ajax.js
Свернутый текст
// JavaScript Document
var d = document;
var req = Create();
function orarios()
{
var a = d.getElementById("cursos").value;
query = "cursos="+a;
Request(query);
}
function Create()
{
if ( navigator.appName == "Microsoft Internet Explorer" )
req = new ActiveXObject( "Microsoft.XMLHTTP" );
else
req = new XMLHttpRequest();
return req;
}
function Request( query )
{
req.open("post", "function.php", true );
req.onreadystatechange = Refresh;
req.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
req.send(query);
}
function Refresh()
{
if( req.readyState == 4 )
d.getElementById("orario").innerHTML = req.responseText;
}
form.html
Свернутый текст
<p class="formulario2"><label><span class="input"> Cursos que Interesan </span>
<select name="cursos" id="cursos" onchange="orarios();" style="width: 253px;">
<option value="0">---Seleccione un curso---</option>
<option value="1">Office nivel básico + S.O.</option>
<option value="2">Office nivel medio/avanzado</option>
<option value="3">Internet y correo electrónico</option>
<option value="4">Idiomas ( inglés, francés )</option>
<option value="5">Cursos a medida bajo demanda</option>
<!--<option value="5">Otros Cursos</option>-->
</select>
</label>
</p>
<p id="orario" class="formulario2"><label>
<?php include('function.php'); ?>
</label></p>
function.php
Свернутый текст
<?php
function orarios() {
if ( $_POST['cursos'] < 4 ) {
$array = array(
'1' => array(
'bla bla bla bla',
'11:00 - 12:30 (L y X)',
'11:00 - 12:30 (M y J)',
'17:30 - 19:00 (L y X)',
'17:30 - 19:00 (M y J)'
),
'2' => array(
'bla bla bla bla',
'19:00 - 20:30 (L a J)'
),
'3' => array(
'bla bla bla bla',
'12:30 - 14:00 (L y X)',
'12:30 - 14:00 (M y J)',
'16:00 - 17:30 (L y X)',
'16:00 - 17:30 (M y J)'
),
);
$arr = $array[ $_POST['cursos'] ];
$cnt = count( $arr );
$select = '<span class="input"> Cursos que Interesan </span>';
$select .= '<select name="orarios">';
foreach ( $arr as $key => $val ) {
$select .= '<option value ="'.$key.'">'.$val.'</option>';
}
$select .= '</select>';
return $select;
} else {
return false;
}
}
if ( isset( $_POST['cursos'] ) )
echo orarios();
?>
Спустя 6 часов, 40 минут, 11 секунд (23.02.2010 - 10:38) Alex VoDevil написал(а):
Единственное что приходит в голову - <select name="orarios">(в php выводе), попробуйте имя заменить.
ЖС вам говорит что orarios не является функцией, стало быть после ajax запроса происходит переопределение объекта orarios скорее всего.
Помогло?
ЖС вам говорит что orarios не является функцией, стало быть после ajax запроса происходит переопределение объекта orarios скорее всего.
Помогло?

Спустя 1 час, 3 минуты, 49 секунд (23.02.2010 - 11:42) Gabriel написал(а):
Alex VoDevil
олололо! помогло
списиб сидел пол дня немог понять в чм дело О_о
олололо! помогло

_____________
one step, two steps HERE WE GO!!!