在coffescript中声明全局变量

Ste*_*sch 7 javascript ruby-on-rails coffeescript

我使用Gem Coocon作为嵌套表格.

#end_date_job_portfolio如果.checkBoxCurrentJob选中,我需要隐藏字段.问题是如果用户没有点击添加新的嵌套表单,jQuery就看不到标签,因为这些标签document还没有.

为此,我使用了cocoon:after-insert.我的脚本:

$(document).ready -> 
  checkbox_date = ""
  end_date = ""
  $('.experiences').on 'cocoon:after-insert', ->
    checkbox_date = $(".checkBoxCurrentJob")
    end_date = $('#end_date_job_portfolio') 
    console.log(checkbox_date)



  #show it when the checkbox is clicked
  ?heckbox_date.on 'click', ->
    console.log("la la la")
    if checkbox_date.prop('checked')
      checkbox_date.hide()
    else
      checkbox_date.fadeIn()
    return 
Run Code Online (Sandbox Code Playgroud)

它显示ReferenceError: \u0441heckbox_date is not defined错误.如何将click checkbox_date和end_date值传递cocoon:after-insert给click事件checkbox_date?

Hyd*_*per 5

问题是你可能在这一行指的是\u{441}heckbox_date(不同的标识符)而不是checkbox_date(正如@muistooshort评论的那样):

  ?heckbox_date.on 'click', ->
  ^
Run Code Online (Sandbox Code Playgroud)

这?应该是ASCII的.c(\u{63}或\u0063).

另外,从ECMAScript语言(基于JavaScript的规范)规范,他们建议将Unicode规范化表格C应用于语言源代码(对于每个实现),我相信解决这个问题(我从不关心,也从未做过)虽然没有这个,但无论如何都是可选的.