por hugo11ab » 2013-12-09 14:09 @631
Muchas gracias, explorer. Para esta aplicación utilicé una ventana modal la cual me oculta los parámetros al momento de abrirla y tenía otra aplicación parecida que necesitaba que se abriera en la misma página y utilicé tu idea de poner botones tipo radio en lugar de enlaces y me funcionó a la perfección.
Aquí dejo el código de cómo quedó:
my $table2 = new HTML::Table(-cols=>5,-border=>1,-bgcolor=>0,-width=>"100%",-spacing=>0,-padding=>3,-style=>"border-collapse:collapse;border-color:#287443");
$table2->setCell(1,1,"<font class=\"sBL3b\">FOLIO</font>");
$table2->setCell(1,2,"<font class=\"sBL3b\">RESPONDABLE </font>");
$table2->setCell(1,3,"<font class=\"sBL3b\">ASUNTO</font>");
$table2->setCell(1,4,"<font class=\"sBL3b\">STATUS <br> DOCUMENTO</font>");
$table2->setCell(1,5,"<font class=\"sBL3b\">DETALLE</font>");
my $r = 2;
($rs,$fetch) = record(
db=>"$base",
tabla=>"correspondencia",
condicion=>"WHERE cve_tipo_documento='OFICIO' order by 1",
campos=>"id_documento,folio_documento,responsable,asunto,clv_status",
visible=>"no"
);
while($fetch->()) {
my $valores = encode_base64("id_documento=$$rs{id_documento}&status=$$rs{status}&botonRegresar=1");
my $status_doc = "EN TRAMITE";
my $clase_status_doc = "naranja";
if ($$rs{status_documento} eq 'A') { $status_doc = "CONCLUIDO"; $clase_status_doc = "verde"; }
$table2->setCell($r,1,"<font class=verde>$$rs{folio}</font>");
$table2->setCell($r,2,"<font class=negro>$$rs{responsable}</font>");
$table2->setCell($r,3,"<font class=negro>$$rs{asunto}</font>");
$table2->setCell($r,4,"<font class=$clase_status_doc>$status_doc</font>");
#asi quedo la sustitucion
$table2->setCell($r,5, "<input name='folio_consultado' value='$valores' type='radio'>");
#$table2->setCell($r,5, "<a href=\"/cgi-bin/scripts/busqueda_detalle_correspondencia.cgi?valores=$valores\"
class=\"detalle\"> <span> DETALLE </span> </a>");
$r++;
}
$table2->setRowBGColor(1,"#287443");
$table2->setRowHeight(1,"20");
$table2->setColAlign(1,"CENTER");
$table2->setColAlign(2,"CENTER");
$table2->setColAlign(3,"LEFT");
$table2->setColAlign(4,"CENTER");
$table2->setColAlign(5,"CENTER");
my $table0 = new HTML::Table(-rows=>4,-cols=>1,-border=>1,-bgcolor=>0,-width=>"100%",-spacing=>0,-padding=>3,-style=>"border-collapse:collapse;border-color:#287443");
$table0->setCell(1,1,"<font class=\"sBL3b\">RELACION DE DOCUMENTOS</font>");
$table0->setCell(2,1,"<br>");
$table0->setCell(3,1,$table2->getTable);
#Añadí este botón para pasar los parámetros mediante el método POST
$table0->setCell(4,1, "<br>" . submit(-name=>'opc',-value=>'Contestar Documento',-class=>'Bsbttn') ."<br>");
$table0->setRowBGColor(1,"#287443");
$table0->setRowHeight(1,"20");
$table0->setRowHeight(2,"10");
$table0->setCellAlign(1,1,"CENTER");
$table0->setCellAlign(2,1,"CENTER");
$table0->setCellAlign(3,1,"CENTER");
print $session->header;
print start_html(-title=>'CAPACITACION',
-script=>[
{ -language => 'JavaScript', -src => '../../documentos/js/busqueda_docs.js'},
],
-BGCOLOR=>'#ffffff',
-style=> [
],
-link=>'#0000ee',
-vlink=>'#0000ee'
);
print start_form(-action=>$script_name,
-name=>'form',
-id =>'form',
-onsubmit =>'return Contestar()' #con esta función válido que el usuario seleccione un radio
);
print $table0;
print end_form();
print end_html();
exit;
¡¡¡Muchísimas gracias!!!