Como siempre, busqué mucho en Google y aquí, pero no encontré lo que quería.
Esto es carga de wordpress y ajax (paginación)
Mi pagina con empleos cat. Tiene varios div con otros subcats y cada uno tiene su propio bucle wp para obtener publicaciones con esa subcategoría específica como esta
<div id="container"> <div id="alljobs"> <div id="posts"> //wp loop #1 //all jobs will be here from all cats; post title etc. </div><!--Posts --> <div id="alljobspagi"> //the pagination for all jobs </div><!--alljobspagi --> </div><!--alljobs --> <div id="alljobspg"> <div id="posts"> //wp loop #2 //all jobs will be here from pg cats; post title etc. </div><!--Posts --> <div id="alljobspgpagi"> //the pagination for all jobs </div><!--alljobspgpagi --> </div><!--alljobspg --> </div><!-- The container -->Ahora todo lo que quiero es que cuando el usuario haga clic en "a" de paginación (etiquetado con el número 1, 2, 3, etc.), pase por preventdefault () y cargue las publicaciones de divs con las publicaciones de las siguientes páginas.
He logrado hacer uno, pero de alguna manera funciona y de alguna manera no. El código js que estoy usando es (en header.php btwn)
$('div#alljobspgpagi a[href]').click(function(e) { e.preventDefault(); var link = jQuery(this).attr('href'); jQuery('div#alljobspgpagi').html('<center><b>Working on it Please Wait .......</b><br /><img src="http://localhost/preloader.gif"/></center>'); jQuery('#alljobspg').load(link+' #alljobspg'); });Bueno, el código anterior funciona parcialmente. Por ejemplo, si tengo dos páginas para la paginación, por ahora estoy en la primera página "1" que está en clase activa (no se puede hacer clic) y cuando hago clic en el número "2" (se puede hacer clic con a) para ir a la segunda página el ajax funciona y todo funciona sin errores. Ahora estoy en la segunda página del resultado y quiero volver a la primera página 1 o la página 3 (siguiente). Pero cuando hago clic en él, ajax no funcionó y se actualizó toda la página (o se cargó con la primera página o la página siguiente).
¿Puede alguien darme alguna idea para esto? Mi código funciona pero solo por una vez. No sé qué tiene de malo, pero preventDefault() no tiene ningún sentido al volver a la página o a la página siguiente. El código js funciona solo una vez después de cargar la página, ya sea volviendo a la página 1 (anterior) o avanzando a la página 3 (siguiente). Lo siento, soy nuevo en esto de jQuery pero no en wp.
Gracias y lo siento si tengo mal inglés.
Lo arreglé. Estaba actualizando el contenido de y, al hacerlo, el evento se borró. Entonces, lo que hice fue agregar un div adicional para todos los eventos.
<div id="container"> <div id="alljobs"> <div id="posts"> //wp loop #1 //all jobs will be here from all cats; post title etc. </div><!--Posts --> <div id="alljobevents"> <div id="alljobspagi"> //the pagination for all jobs </div><!--alljobspagi --> </div><!-- Update : This is Extra--> </div><!--alljobs --> <div id="alljobspg"> <div id="pglist"> <div id="posts"> //wp loop #2 //all jobs will be here from pg cats; post title etc. </div><!--Posts --> <div id="alljobspgevent"> <div id="alljobspgpagi"> //the pagination for all jobs </div><!--alljobspgpagi --> </div> </div><!--pglist --> </div><!--alljobspg --> </div><!-- The container -->Y Js actualizado se convierte en
$('#alljobspgevent').click(function(e) { e.preventDefault(); var link = jQuery(this).attr('href'); jQuery('#pglist').html('<center><b>Working on it Please Wait .......</b><br /><img src="http://localhost/preloader.gif"/></center>'); jQuery('#pglist').load(link+' #pglist'); // Same can be done for updating pagination });