【问题标题】:Give input field a value with Jquery in Ruby on Rails在 Ruby on Rails 中使用 Jquery 为输入字段赋值
【发布时间】:2018-11-18 12:59:12
【问题描述】:

我想给一组输入字段一个值。 事先并不清楚要填写多少个输入字段,但是它们都具有相同的类

当我像这样调用第一个输入字段的 id 时,它可以工作:

$('#order_order_articles_attributes_0_workload', row).val((price / 125).toFixed(2))

当我这样调用类时,它不起作用:

$('td.input.workload', row).val((price / 125).toFixed(2))

haml 代码如下所示:

%td.input.workload= order_article_f.input :workload, value: "0", label: false, input_html: { class: 'article_workload' }

我怎样才能让这个在课堂上发挥作用?

【问题讨论】:

  • row 是什么?在不知道您查询的上下文的情况下无法提供帮助。 (虽然我总是会使用$(row).find(...)row 是 jQuery 选择结果吗?
  • 行 = $(this).parents("tr:first")
  • 它在这个方法中:$(input).on "change", ->
  • val 不是用于表单域吗?你在表格单元格上调用val,不是吗?如果在单元格内的输入元素上调用呢?

标签: jquery ruby-on-rails haml


【解决方案1】:

下面的代码没有拾取输入字段:

$('td.input.workload', row).val((price / 125).toFixed(2))

此规则试图在具有此类“输入工作负载”的 td 元素上设置一个值。

<table><tr><td class="input workload">is trying to set value here</td></tr></table>

我用一个例子创建了一个小提琴来为所有输入设置值。

https://jsfiddle.net/tjecuh3m/

希望我能帮上忙。

【讨论】:

  • 我不得不这样称呼它:'td.workload input' 而不是:'td.input.workload' 谢谢!
  • 很高兴为您提供帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-04
  • 2012-05-12
  • 1970-01-01
相关资源
最近更新 更多