2013-05-03 20 views
6

Sto riscontrando un problema con il bootstrap di Twitter & Collegamento remoto dati Rails.Rails remote conflitti con modal remoto bootstrap

Carico il contenuto modale con data-remote="/path/to/data". Tutto funziona come voglio, ma creare due richieste.

= link_to '#myModal', 'Click here', data: {toggle: 'modal', remote: '/path'} 

Il primo è rotaie tecnica d'reomte che fa una richiesta alla pagina Sono in e dopo che bootstrap fa le sue requets e viene mostrato il modal.

Esiste un modo per disattivare i binari remoti su collegamenti specificati o è effettivamente un altro problema?

+0

Forse manca qualche contesto, ma perché vorresti spegnere il tuo telecomando se questo sta caricando il contenuto della tua modale? La richiesta da bootstrap viene utilizzata solo per mostrare la modal credo e non è _really_ una richiesta http. –

+0

Bootstrap sta caricando il contenuto tramite data-remote e le guide stanno caricando una richiesta di ricezione. Voglio solo il modale da caricare. – sandelius

risposta

5

Secondo Bootstrap doc modale: http://twitter.github.io/bootstrap/javascript.html#modals

se si sta utilizzando l'API dati, è possibile in alternativa utilizzare il tag href per specificare l'origine remota. Un esempio di questo è la seguente:

<a data-toggle="modal" href="remote.html" data-target="#modal">click me</a> 

Quindi, la richiesta può essere soddisfatta da disabilitare i dati API Rails UJS e usare Bootstrap di. Così

<a data-toggle="modal" href="remote.html" data-target="#modal" 
data-remote="false">click me</a> 

Nel tuo caso. Il codice lato server

= link_to 'Click here', '/path_for_bootstrap', 
    data: {toggle: 'modal', remote: false, target: "#myModal"} 

Aggiornamento O meglio, non c'è bisogno di definire remote a tutti perché nessuno ha bisogno, sia Bootstrap o UJS!

= link_to 'Click here', '/path_for_bootstrap', 
    data: {toggle: 'modal', target: "#myModal"} 
+0

Ah, se ho rimosso il telecomando: falso funziona e viene creata una sola richiesta. Grazie!! – sandelius

+0

@sandelius, aha, sì :) In realtà non è necessario definire 'remote' in questo caso. –

+0

Hm .. Volevo creare il codice compatibile con "client senza javascript". Bootstrap ci consente di impostare href per i browser senza JS (o spider) e impostare data-remote per i browser con supporto JS. – knagode

Problemi correlati