【问题标题】:How to pass rails data to JS or Coffeescript?如何将 Rails 数据传递给 JS 或 Coffeescript?
【发布时间】:2015-09-22 11:40:49
【问题描述】:

我想从视图中获取文章 ID。

<%= f.text_area :content, rows: 5, placeholder: 'input....', class: 'form-control',
    id: "tags", data: {article_id: @article.id } %>

然后将article_id传递给coffeescript:

$ ->
  id = $("#tags").data('article_id')
  console.log "test-----------#{id}"
  $("#tags").autocomplete(
    source:  '/articles/' + id + '/autocomplete.json')

但输出是:

test-----------undefined

如何将rails数据传递给JS或coffeescript?有几种制作方法?

提前致谢!

正如@muistooshort 和@JoelL 所说:data: {article_id: @article.id} will produce data-article-id="xxxx"

html 输出:

<textarea rows="5" placeholder="input..." class="form-control" id="tags" data-article-id="{&quot;$oid&quot;:&quot;560017ddbd172d16d6000001&quot;}" name="comment[content]">

但我从浏览器控制台日志中获得了信息:

test----------[object Object]

它不是一个字符串。

【问题讨论】:

  • 试试$("#tags").data('article-id')。我认为 Rails 将 _ 转换为 - 以获取数据属性
  • 您是否尝试过查看 HTML 以查看生成的内容?
  • @muistooshort &lt;textarea rows="5" placeholder="input..." class="form-control" id="tags" data-article-id="{&amp;quot;$oid&amp;quot;:&amp;quot;560017ddbd172d16d6000001&amp;quot;}" name="comment[content]"&gt;,但我得到了test----------[object Object]

标签: javascript ruby-on-rails ruby coffeescript


【解决方案1】:

data: {article_id: @article.id} 将产生data-article-id="theid"

以下应该有效:

id = $("#tags").data('article-id')

【讨论】:

  • 你是对的,但我得到的是 test----------[object Object],而不是文章 ID
【解决方案2】:

更新:

由于data-article-id 中包含{},您可以在输入中手动添加:

<%= f.text_area :content, rows: 5, placeholder: 'input....', class: 'form-control', id: "tags", 'data-article-id': @article.id %>

对于 Jquery:

尝试attr获取值属性:

id = $("#tags").attr("data-article-id")
console.log "test-----------"+id

对于咖啡脚本:

id = $("#tags").data("article-id")
console.log "test-----------"+id

【讨论】:

  • 非常感谢!我得到了文章 ID。
  • 不客气。我已经更新了我的答案。好的。你是通过什么方式得到你的身份证的?
【解决方案3】:

试试这个

id = $("#tags").data('article_id')
console.log "test-----------"+id

【讨论】:

  • 但是Coffeescript可以使用#{...}
猜你喜欢
  • 2018-11-07
  • 2016-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-24
  • 1970-01-01
  • 2014-12-01
  • 1970-01-01
相关资源
最近更新 更多