No me da ningún error, pero tampoco me trae ningún resultado:
Código PHP:
<?php
$categorias = mysql_query("select id_cat, categoria from categorias");
$sub_categorias = mysql_query ("select id_sub, subcategoria from subcategorias");
?>
<form id="form1" name="form1" method="post">
<select name="categoria" id="categoria">
<option selected="selected">Seleccione una categoria</option>
<?php
while($categoria = mysql_fetch_array($categorias))
echo "<option value=\"$categoria[id_cat]\">$categoria[categoria]</option>";
?>
</select>
<select name="subcategoria" id="subcategoria">
<option selected="selected" data-categoria="0">Seleccione una sub-categoria</option>
<?php
while($sub_categoria = mysql_fetch_array($sub_categorias))
echo "<option value=\"$sub_categoria[id_sub]\" data-categoria=\"$sub_categoria[id_cat]\">$sub_categoria[subcategoria]</option>";
?>
</select>
</form>
<script>
function updateSubCategorias()
{
var s_categorias = document.querySelectorAll("#subcategoria option");
var categoria_actual = document.getElementById("categoria").value;
for(var nro=0; nro < s_categorias.length; nro++)
{
var categoria = s_categorias[nro].getAttribute("data-categoria");
if(categoria == 0 || categoria == categoria_actual)
s_categorias[nro].style.display = 'block';
else
s_categorias[nro].style.display = 'none';
}
}
document.getElementById("categoria").addEventListener("change", updateSubCategorias);
updateSubCategorias();
</script>