Préface: Je me considère comme « un peu efficace » dans le rubis sur des rails, et un novice en javascript. En outre, oui, j'ai installé jQuery et les plugins associés à la place de la bibliothèque Prototype par défaut.
Je suis dans une situation où je tire dans une table de hors site dans un iframe (qui prend soin de tous les JS internes pour moi) de sorte que lorsqu'une partie de la table est cliqué, un td gagnera la classe "actif." Ce que je voudrais faire est de prendre cette information (je suppose que je peux l'obtenir dans un format de chaîne), et le passer à une méthode (dans mon contrôleur, je suppose) qui va analyser le code HTML, retirez le informations pertinentes, puis appelez une méthode de création dans le même contrôleur avec les informations analysées, le résultat final étant un nouvel élément dans cette table.Javascript grab html à partir iframe externe + appelant une action de contrôleur avec des données
Ce que j'ai à ce jour est le javascript que je crois est correct:
<script type="text/javascript">
var ImportInfo = function() {
var info = $('td.active').html();
// call controller action which parses the given string,
//checks for existence in database, and adds new row if needed
}
$("#Import").click(ImportInfo);
</script>
et, bien sûr, un bouton avec id = "Importer".
J'ai regardé cette question: Using jQuery To Call A Controller Action mais je ne sais pas très bien comment appeler une action du contrôleur pour passer le contenu du td sous forme de chaîne. Est-ce faisable avec la méthode post de jQuery?
INFO AJOUTÉE: mon iframe:
<iframe id='locator' src="http://hosted.where2getit.com/wafflehouse/indexnew.html" width="740" height="700" marginheight="0" marginwidth="0" scrolling="no" frameborder="0" align="bottom" name="plg_iframe">No Frames</iframe>
Heh, si vous pouvez me aider dès le début avec le prototype, je serais plus que disposé à revenir en arrière. Ceci est le premier (et probablement le seul) bit de JS dans le projet, donc ce n'est pas comme s'il y avait trop de recul. La seule raison pour laquelle j'ai changé est parce que le collègue à qui j'ai parlé a recommandé jQuery plutôt que Prototype. – Zind
@Zind: Voir ma réponse éditée. Sachez que cela ressemble à ce que vous essayez de faire est impossible en raison de la sécurité inter-domaines iframe – Josh
Ouais, je remarque que cela pourrait être un problème quand je couchait dans Firebug juste essayer de voir si ce que j'avais jusqu'à présent était même en train de chercher les bonnes données - je pourrais en fait ne pas avoir de chance, mais merci pour l'assistance JS de toute façon, ça viendra en pratique très utile si je devais être capable de combler le fossé. – Zind