未触发 CoffeeScript 函数

CoffeeScript function not triggered

我有几个由显示页面内的循环生成的输入。他们都有相同的name。当他们中的一个不专心时,我想调用一个 JS 脚本。然而,信号永远不会被触发。为什么?

expenses.js.coffee

alert 'Test' // This instruction is detected

$("input[value='nb_kms[]']").blur -> // This one is not
   alert 'Handler for .blur() called.'
return

show.html.erb

<% @calendar.each_with_index do |d, i| %>       
  <tr>
    <td><input type="number" name="nb_kms[]" value="<%= @nb_kms[i] %>"></td>
  </tr>

你试过了吗?

$("body").on "blur", "input[value='nb_kms[]']", ()->

或者这样做,将 class 添加到输入

<tr>
  <td><input type="number" name="nb_kms[]" value="<%= @nb_kms[i] %>" class="kms_input"></td>
</tr>

在 js 中

ready = ()->
  $("body").on "blur", ".kms_input", ()->
    alert $(this).val()
    alert 'Handler for .blur() called.'

$(document).ready ready
$(document).on 'page:load', ready