【问题标题】:Extracting Data from an Id tag (ruby)从 Id 标签中提取数据(红宝石)
【发布时间】:2012-10-23 21:27:46
【问题描述】:

我仍在学习并重新搜索了几个小时的主题。

我视图中的以下代码显示了论坛中的电子邮件地址

<form id="user_details" action="<%= request.path %>" method="post" >
<output id="email">
</form>

我想要做的是让电子邮件文本成为一个超链接(就像 mailto 一样)。我只是不知道正确的语法是什么。

非常感谢!

【问题讨论】:

  • 电子邮件是如何到达那里的?这不是一个 Rails 表单,而是一个普通的旧 HTML 表单。有脚本把它放在那里吗?如果 rails 愿意的话,应该有一个 erb 标签 (&lt;%=)。
  • 谢谢!所以现在我知道它是在旧的 html 中......它不是把它放在那里,但它应该是正确的?我在用户控制器中找到了这段代码,您认为它与此有关吗? def modify puts "Modifying user" CONN.basic_auth cookies[:login],'' # 这些应该作为表单元素发布 email = params[:email]

标签: ruby-on-rails ruby erb mailto


【解决方案1】:

我读了一些关于输出标签的内容,它应该是脚本计算的结果。它并不真正适合您在这里所做的事情。输出标签不是表单标签,因此您的表单不会在输出标签中发布电子邮件地址。但是 - 您正在询问如何将其显示为 mailto 链接。您可以将输出标签替换为锚标签:

<a href="" id="email"></a>

然后您必须找到使用 id email 填充字段的脚本,并确保它还使用 mailto:email@example.com 填充 href 属性。如果这是 jquery,它会是这样的:

var updateEmailTag = function(email) {
    $('#email').html(email);
    $('#email').attr('href', 'mailto:' + email );
}

如果您想在服务器端执行此操作,则必须找到电子邮件的来源,然后按照 Aditya Kapoor 的建议使用 mail_to 帮助器。

【讨论】:

    【解决方案2】:

    有一个 Rails 助手 mail_to 就是专门用来做这个的...

    从这里阅读更多内容。 http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-mail_to

    【讨论】:

    • 我阅读了整个页面,但没有帮助。因为有 1000 位用户,所以在编写 mail_to 时我需要知道用户的电子邮件...当我的电子邮件针对每个用户发生变化时,我不知道使用它的语法。
    • srry 我没听懂你最后的评论
    • 显示当前用户的电子邮件。如何将其合并到 mail_to 中?
    • 几乎没有“当前用户”。这是别人的代码,所以还在想办法。
    猜你喜欢
    • 1970-01-01
    • 2015-07-07
    • 1970-01-01
    • 2010-10-25
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-01
    相关资源
    最近更新 更多