Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

359
Visualizações
CakePHP, jQuery - Agregar atributo de datos al ancla

Estoy buscando una forma de insertar un atributo de datos en los anclajes de mi tabla en CakePHP. Genera automáticamente el siguiente código, pero no tengo ni idea de cómo modificarlo de manera que lo convierta en un atributo de destino de datos.

La razón por la que quiero lograr esto es porque estoy vinculando a diferentes div en la misma página y quiero evitar que la página se vuelva a cargar . ¿Tengo que insertar un preventDefault() de jQuery? Y si es así, ¿cómo hacerlo?

Este es mi código actual:

 <?php foreach ($servers as $server): ?> <tr> <td><?= $this->Number->format($server->id) ?></td> <td><?= h($server->url) ?></td> <td><?= h($server->description) ?></td> <td><?= h($server->Timestamp) ?></td> <td class="actions"> <?= $this->Html->link('View', array('#' => 'admin-view-' . $server->id)) ?> <?= $this->Html->link('Edit', array('#' => 'admin-edit-' . $server->id)) ?> </td> </tr> <?php endforeach; ?>

Aquí está el resultado que estoy buscando; tiene que hacerse usando las convenciones de CakePHP (no importa el elemento de la lista):

 <a data-target="admin-edit">Edit</a> <a data-target="admin-view">View</a>
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Probaste esto:-

 <?= $this->Html->link('View',array('#' => 'admin-view-' . $server->id,'data-target'=>"admin-view");?> <?= $this->Html->link('Edit',array('#' => 'admin-view-' . $server->id,'data-target'=>"admin-edit");?>

Para evitar que se vuelva a cargar la página, cree un enlace con href="javascript:void(0);" como abajo:-

 <?= $this->Html->link('View','javascript:void(0);',array('#' => 'admin-view-' . $server->id,'data-target'=>"admin-view");?> <?= $this->Html->link('Edit','javascript:void(0);',array('#' => 'admin-view-' . $server->id,'data-target'=>"admin-edit");?>

Si desea evitar a través de jQuery (no con el código anterior), entonces:

 $('link').click(function(e){ e.preventDefault(); //rest your code });

Nota: - Asegúrese de que la biblioteca jQuery se agregue antes de este código y este código debe estar en la parte inferior de la página.

over 4 years ago · Santiago Trujillo Relatório

0

Aquí están los detalles sobre el método de link CakePHP HtmlHelper

Los métodos de link de CakePHP toman 3 argumentos como parámetros.

  • Título [Cadena]
  • Url [cadena o matriz]
  • Opciones/Atributos [Matriz]

Sintaxis:

 $this->Html->link($title, $url = null, array $options = []);

Ejemplo :

 echo $this->Html->link( 'Title', '/path/to/url', #OR ['controller'=>'','action'=>'','others'] [ 'class' => 'button', 'target' => '_blank', 'data-url'=>'#', 'data-path'=>'', /*Other attributes*/ ] );

Aquí están los detalles sobre la creación de enlaces en CakePHP

Para su problema, si no necesita href='' en la etiqueta <a> , entonces puede usar el button u otras etiquetas en lugar de la etiqueta <a> .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Assistente virtual