首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在以rails提交表单之前,如何在页面上显示打开的图形协议的数据?

在以rails提交表单之前,如何在页面上显示打开的图形协议的数据?
EN

Stack Overflow用户
提问于 2012-05-13 20:31:10
回答 1查看 312关注 0票数 1

我目前正在实现一个功能的微博张贴,用户可以链接到一个网站,视频,图像等,并有预览的信息,然后他们提交实际的微博。

我正在使用的

Ruby开放图形协议gem:

https://github.com/intridea/opengraph

开放图形协议:

http://ogp.me

我对它进行了测试,它非常容易使用,并按预期工作:

控制器:

代码语言:javascript
复制
  require 'opengraph'

  def new
    @movie = OpenGraph.fetch('http://www.youtube.com/watch?v=6ifSudReeuM')
  end

视图:

代码语言:javascript
复制
<iframe src="<%= @movie.video %>"></iframe>

这将像预期的那样显示视频。好的,我需要这样做,而不需要提供视频url在控制器手动,但允许我的用户这样做,但之前提交微信表格。

micropost表单中有一个用于粘贴链接的文本字段。

在粘贴链接或单击micropost表单中的div按钮时,我希望将url传递给控制器并作为参数传递到OpenGraph.fetch()中。

我想做到这一点,而不提交我的微信表格,意思是不点击主提交按钮的表单。我意识到我可以写一些JQuery来检测文本字段何时粘贴到其中,然后得到文本字段的值,即URL。

问题:

我的问题是如何模拟我对当前控制器所做的事情。基本上,我是如何手动提供链接作为OpenGraph.fetch()的参数,但是使用用户在textfield中粘贴/键入的URL。

我只想让我的用户看到他们粘贴的东西的预览,例如视频屏幕和视频描述,我可以从对象抓取,但在他们提交微博之前。

  1. 用户粘贴链接
  2. ,使用打开的图形协议gem
  3. 获取信息,而无需页面刷新

然后,用户可以在微博表格的文本区域键入他们的微博内容,或者只是提交它。

所有数据都被发送到数据库。例如,微信内容和视频的URL。

我似乎想不出实现这个目标的方法。谢谢你帮我个忙。

亲切的问候

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-13 20:35:39

设置一个单独的控制器操作,它只为传递的url param获取ogp数据,然后在url输入的前端设置input事件,以向该操作发送ajax请求,并将数据传回。当ajax请求接收到响应时,它可以按预期填充预览。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10574984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档