Comunidad de diseño web y desarrollo en internet online

links de base de datos no funcionan con load de jquery

Citar            
MensajeEscrito el 02 Mar 2010 04:23 pm
Hola....
Mi problema ahora es que estoy haciendo un buscador con bases de datos y para esto tengo una tabla con dos campos uno para almacenar las palabras clave que se buscarían y otro campo para almacenar los enlaces hacia las paginas;

pero el problema es que cuando son enlaces extraidos de la base de datos este codigo

$('a').each(function(){
var href = $(this).attr("href");
$(this).attr({ href: "#"});
$(this).click(function(){
$("#contenido").load(href);
});
});

no se ejecuta, pero si son enlaces normales si funciona

aqui esta el codigo completo--->


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Ejemplo</title>
<style>
#content{
margin:auto;
width:800px;
border:1px solid #000099;
}

#encabezado{
height:60px;
border-bottom:1px solid #000099;
}

#contenido{
height:200px;
}
</style>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#buscar").click(function(e){
var palabras=$('#palabras').attr('value');
$.ajax({
type: "POST",
url: "buscador.php",
data:'palb='+ palabras,
success: function(datos){
$("#contenido").html(datos);
}
});
return false;
});
//---------------------------------
$('a').each(function(){
var href = $(this).attr("href");
$(this).attr({ href: "#"});
$(this).click(function(){
$("#contenido").load(href);
});
});
//---------------------------------
});
</script>
</head>
<body>
<div id="content">
<div id="encabezado">
<form name="buscador">
<table width="10" border="0">
<tr>
<td><input type="text" id="palabras" size="9"/></td>
<td><input type="submit" id="buscar"/></td>
</tr>
</table>
</form>
</div>
<div id="contenido">
<a href="paginas/vision.html" >Vision</a>
<a href="paginas/mision.html">Mision</a>
</div>
</div>
</body>
</html>

Por sebastiancb

62 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Mar 2010 07:23 pm
Disculpas olvide colocar el codigo php->
conexion.php->
<?php
function conectar(){
$conexion=mysql_connect("localhost", "root", "") or die("No se pudo conectar con el servidor");
return $conexion;
}

function cerrar_conexion($conexion){
mysql_close($conexion);
}
?>

buscador.php->
<?php
include('conexion.php');
$palabras=$_POST['palb'];
if(strlen($palabras)>0)
{
echo "<p>Resultados</p><br/>";
$conexion=conectar();
mysql_select_db("DBdatos", $conexion) or die("No se pudo conectar con la base de datos");
$result=mysql_query("select enlace from buscador where palabras like '%".$palabras."%'",$conexion);
while($fila=mysql_fetch_array($result)) {
echo "<a href=".$fila['enlace'].">".$fila['enlace']."</a>"."<br/>";
}

cerrar_conexion($conexion);
}
?>

Por sebastiancb

62 de clabLevel



 

msie8
Citar            
MensajeEscrito el 17 Mar 2010 02:02 am
Cuando recibes la respuesta del ajax debes mandar a ejecutar este codigo de nuevo

Código Javascript :

$('a').each(function(){
var href = $(this).attr("href");
$(this).attr({ href: "#"});
$(this).click(function(){
$("#contenido").load(href);
});
});


te sugiero que lo coloques en una función para poder invocarla donde quieras.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.