0

我正在尝试使用咖啡脚本让多个 Select2 标记字段在同一页面上工作并且失败:(

我从这个开始;

$(document).on "ready page:load",(
  ->  $("#text_field_1").select2
        tags: ["A", "B", "C"]
  ->  $("#text_field_2").select2
        tags: ["1", "2", "3"]
)

没有喜悦:(我现在就这样工作;

text_field_1 = ->
  $("#text_field_1").select2
    tags: ["A", "B", "C"]
text_field_2 = ->
  $("#text_field_2").select2
    tags: ["1", "2", "3"]

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

但这感觉不是一个很好的解决方案。谁能提供任何替代方案或告诉我我做错了什么?

4

2 回答 2

0

这是基于微薄的建议。我发布的评论格式不太好,所以又来了;

text_field_1 = ->
  $("#text_field_1").select2
    tags: ["A", "B", "C"]
text_field_2 = ->
  $("#text_field_2").select2
    tags: ["1", "2", "3"]

$(document).ready ->
  text_field_1()
  text_field_2()
$(document).on 'page:load', ->
  text_field_1()
  text_field_2()

谢谢

于 2014-01-08T20:59:21.707 回答
0

你没有->正确使用。您只是将每一行包装在一个您从不调用的匿名函数中,然后传递两个

您只需要一个,直接传递给$(document).ready

$(document).ready ->
  $("#text_field_1").select2
    tags: ["A", "B", "C"]
  $("#text_field_2").select2
    tags: ["1", "2", "3"]
于 2014-01-07T13:45:06.700 回答