2010-03-21 2 views
12

Voici l'offre.Ajout de code HTML à la fin du corps à l'aide de javascript

J'ai plusieurs modèles pour les visages (lightbox) dont j'ai besoin à différents points de l'application. ceux-ci sont stockés dans différents partiels et fichiers.

Je vais initialiser différentes fonctions javascript en fonction de celles dont j'ai besoin. La question est, quelle est la meilleure façon d'ajouter la page HTML externe dans mon corps en utilisant javascript?

Répondre

10

Depuis que vous avez tagué la question, voici une solution jQuery. N'oubliez pas que le paramètre peut également être un élément DOM. Ainsi, vous pouvez le faire:

var p = $("<p/>").text("a paragraph"); 
$("body").append(p); 
0

la manière facile avec jQuery est:

$('#result').load('test.html'); 

<div id="result"><!--/ Hold My Data! /--></div> 

évidemment vous pouvez changer #result avec corps

+0

merci! C'était super utile. une idée de comment cela peut être fait dans les rails? c'est souvent un partial (_partial.html.erb), qui ne peut pas être appelé comme ("/ partial") –

+0

Si vous voulez charger ces partiels dynamiquement avec js, vous devrez les exposer chacun avec un itinéraire. Remplacez 'test.html' par'/chemin/vers/mon/action/vers/render_partial'.Alternativement, si vous savez que vous en aurez besoin, rendez les partiels dans la vue et cachez-les avec 'display: none;' jusqu'à ce que vous les utilisiez dans votre facebox. –

+0

Lisez ceci http://stackoverflow.com/questions/2229811/load-partial-with-jquery-and-rails ET ce http://stackoverflow.com/questions/2484958/rails-ajax-jquery-problem –

0

Vous pouvez également essayer une bibliothèque de modèles .. Comme le guidon et le trait de soulignement.

et d'ajouter e el fourni par Backbone.js

-1

Supposons que vous voulez ajouter ce code HTML dans votre modèle, vous pouvez utiliser le code ci-dessous selon votre application Considérez le code

Exemple 1:

rowData += '<div style="width: 130px;">'+param1+'</div>'; 
rowData += '<div style="width: 130px;">'+param2+'</div>'; 
$('#ID').html(rowData); 

et s'il vous plaît assurez-vous que le js devrait être inclus dans ce fichier. Voici les informations de la variable utilisée ci-dessus:

données de ligne - le code html que vous voulez ajouter,

param - si vous voulez afficher dynamiquement la valeur de la variable de script java sur le navigateur,

#ID - ID de la div dans laquelle vous voulez ajouter cette html

exemple 2: Tenir compte le code HTML suivant:

<h2>Hello World</h2> 
<div class="user"> 
    <div class="inner">Hi</div> 
    <div class="inner">Bye</div> 
</div> 

Vous pouvez créer du contenu et l'insérer dans plusieurs éléments à la fois:

$(".inner").append("<p>GOD IS GREAT</p>"); 
Questions connexes