ho voluto caricare le pagine php completamente dinamiche nel schede tramite Ajax. Ad esempio, volevo avere $ _GET valori nei collegamenti, in base alla scheda che era - questo è utile se le tue schede sono dinamiche, in base ai dati del database per esempio. Non ho trovato nulla che funzionasse con questo, ma sono riuscito a scrivere qualche jQuery che funziona davvero e fa quello che sto cercando. Sono un job completo noob ma ecco come l'ho fatto.
- Ho creato una nuova opzione "commutazione dati" chiamata tabajax (anziché solo scheda), questo mi consente di separare ciò che è ajax e il contenuto statico.
- Ho creato uno snippet jQuery che viene eseguito in base a quell'interruttore di dati, non interferisce con il codice originale.
Ora posso caricare dire url.php? Value = x nelle mie schede Bootstrap.
Sentitevi liberi di usare, se si vuole, il codice è sotto
codice
jQuery:
$('[data-toggle="taba"]').click(function(e) {
e.preventDefault()
var loadurl = $(this).attr('href')
var targ = $(this).attr('data-target')
$.get(loadurl, function(data) {
$(targ).html(data)
});
$(this).tab('show')
});
HTML:
<li><a href="tabs/loadme.php?value=1" data-target='#val1' data-toggle="tabajax">Val 1</a></li>
Così qui si può vedere che ho cambiato il modo in cui bootstrap carica la cosa, io uso l'href per l'ajaxlink dinamico e poi aggiungo un valore 'data-target' al link, che dovrebbe essere il div target (contenuto della scheda).
Pertanto, nella sezione del contenuto della scheda, è necessario creare un div vuoto denominato val1 per questo esempio.
vuoto Div (target):
<div class='tab-pane' id='val1'><!-- Ajax content will be loaded here--></div>
Spero che questo è utile a qualcuno :)
non funziona con me. – assaqqaf
quale parte non funziona? il gestore non è stato eseguito? – ukessi
In base a [jQuery docs] (http://api.jquery.com/change/): "L'evento di modifica viene inviato a un elemento quando il suo valore cambia.Questo evento è limitato a elementi,