Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/10/2011, 10:12
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
añadir mediante función selectores

Amigos,
tengo un problema con una función javascript que no parece funcionarme. El hecho es que otras funciones similares sí que parecen funcionar. Se trata de que al pulsar el botón + se añada otros dos selectores de creador y orden. Ahora al pulsar el botón no ocurre nada. He reducido el código al máximo usando array en lugar de una carga desde la base de datos. No os preocupéis por los index undefined que aparecerán, pues también eso lo tengo resuelto. Mi idea es poder añadir más de un selector de manera dinámica, rellenar los datos y luego que el echo muestre los mismos.
Código:
<html>
<head>
<title></title>
<script type="text/javascript">
var creadores = 0;
function anadircre(vcre){
if (creadores==0){
creadores = vcre+1;
}
document.getElementById("dvcreador").innerHTML = "<table id='tabcreador'>" +
document.getElementById("tabcreador").innerHTML +
"<tr>" +
"<td>" +
"<select name='cre" + creadores + "'>" +
"<option value='0'>Selecciona un valor</option>" +
<?php
foreach($creadores as $key => $creador){
echo "\"<option value='{$key}'>".addslashes($creador)."</option>\" + ";
}
?>
"</select>" +
"</td>" +
"<td>" +
"<select name='ordcre" + creadores + "'>" +
"<option value='0'>Selecciona un valor</option>" +
"<option>1</option>" +
"<option>2</option>" +
"<option>3</option>" +
"<option>4</option>" +
"</select>" +
"</td>" +
"</tr>" +
"</table>";
creadores++;
}

</script>
</head>

<body>
<?php
$creadores = array (1 => 'Juan', 2 => 'Luis', 3 => 'Fernando', 4 => 'Antonio');
?>
<form type ="POST" name = "form1" action="">
<tr>
<td colspan="2">
<div name ="dvcreador" id="dvcreador">
<table id="tabcreador">
<tr>
<td>CREADOR</td>
<td>ORDEN</td>
</tr>
<?php
$cont_cre = 1;
?>
<tr>
<td>
<select name="cre<?php echo $cont_cre;?>">
<option value="0">Selecciona un valor</option>
<?php
foreach ($creadores as $key => $creador){

echo "<option value='{$key}' >".addslashes($creador)."</option>";
}
?>
</select>
</td>
<td>
<select name="ordcre<?php echo $cont_cre;?>">
<option value="0">Selecciona un valor</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
</td>

<td><input type="submit" name="cre_<?php echo $key;?>" value="-" /></td>
</tr>
<?php
$cont_cre++;

?>
</table>
</div>
</td>
</tr>
<tr>
<td colspan="2"><input type="button" value="+" onclick="anadircre(<?php echo $cont_cre;?>);" /></td>
</tr>
<tr><input type = "submit" name = "enviar" value = "enviar"></tr>
</form>
<?php

$seguir=1;
$cont=1;
$varcre='';
$varord='';
while ($seguir){
$varcre = $_GET['cre'.$cont];
$varord = $_GET['ordcre'.$cont];
if (!$varcre){
$seguir=0;
} else {
echo $varcre.' '.$varord.'</br>';
$cont++;
}
}

?>

Última edición por jurena; 16/10/2011 a las 12:51