我想知道如何将关联数组 $data[] 传递给 a 内的 javascript 函数,<button>
而不必经常放置它$data[]
,即:首先我进行查询
<?php
$resultado=mvcontrolador::listadoTablaControlador("t_cliente",null);
foreach ($resultado as $indice => $data) { ?>
我在表格中显示字段:
<tr id="campos">
<td><?php echo $data['nombre_cliente'];?></td>
<td><?php echo $data['apellido_cliente'];?></td>
<td><?php echo $data['cedula_cliente'];?></td>
<td><?php echo $data['correo_cliente'];?></td>
<td><?php echo $data['telf_cliente'];?></td>
<td><?php echo $data['estado'];?></td>
<td><?php echo $data['codigopostal'];?></td>
<td><?php echo $data['localidad'];?></td>
Y donde quiero que dichos valores del array sean insertados en una funcion
dentro de un
`
<form method="POST">
<td> <button type="button" value=""
onclick='return verInfoCliente("<?php echo $data['id_cliente'];?>");'
name="infoCliente" >Info</button></td> <?php } ?>
我现在要做的是在一个单独的 js 文件中的函数中使用:
函数 viewCustomerInfo(){}
这显示了包含我的数组的所有数据的警报,而无需手动单独放置数组的所有数据。无需这样做:
verInfoCliente("<?php echo $data['id_cliente'],
$data['nombre_cliente'],
$data['apellido_cliente'],
$data['cedula_cliente'],
$data['correo_cliente'],
$data['telf_cliente'];?>");
和javascript函数:
function verinfocliente(id,nombre,apellido,cedula,correo,telf){
alert('Los datos del cliente son: \nNombre:'+nombre+'\nApe... ');
}
ETC...
我想要的是将该 PHP 数组传递给funcion()
javascript,并在其中funcion()
使用我的alert()
.
我希望它被理解我想要暴露的东西,提前谢谢。
不能直接从 array 传递
php
到 arrayjavascript
,但是可以直接从 array 传递php
到json
,也就是objeto json
injavascript
。在 PHP 中,将函数
json_encode
应用于数组。根据您的代码,它将是:
函数
javascript
接收对象,通过解释获得值json
:最后,如果您希望它严格地是 a
array
ofjavascript
(但不是 ajson
),您应该在 中创建一个自定义函数php
,但此时没有必要复杂化。运气您可以在 JS 中定义这样的变量,这样您就不必每次都调用 PHP:
这是单击时我的功能的外观
<button type="button" onclick="verInfoCliente("<?php echo json_encode($data);?>")">
:function verInfoCliente(datos){ if (confirm('Infomacion del Cliente. \nNombres: '+datos.nombre_cliente+ '\nApellidos: '+datos.apellido_cliente+ '\nCedula: '+datos.cedula_cliente+ '\nCorreo: '+datos.correo_cliente+ '\nTelefono: '+datos.telf_cliente+ '\nEstado: '+datos.estado+ '\nCodigo Postal: '+datos.codigopostal+ '\nLocalidad: '+datos.localidad+ '\nFecha de registro: '+datos.fecha_reg+ '\n\n¿Desea editar este cliente?')) { alert('Asegurese de que los datos sean los correctos.'); window.location.href="editarCliente&idCliente="+datos.id_cliente; }else{ return false; } }
它以图形方式向我展示了这一点:感谢大家的帮助!