0

我在 Rails 应用程序中使用 Fullcalendar。我有一个用于输入有关事件的数据的模式。一个字段是overtime布尔值。

HTML:

<input type="checkbox" name="overtime" id="overtime" value="" class="text ui-widget-content ui-corner-all" />

以下代码不起作用 - 日历不显示:

select: (start, end, allDay) ->
  title = $("#title")
  description = $("#description")
  hours = $("#hours")
  overtime = $("#overtime")
  workorder = $("#workorder_id")
  actcode = $("#actcode_id")
  $("#dialog-form").dialog
    autoOpen: true
    height: 500
    width: 400
    modal: true
    buttons:
     "Create Labor": ->
       $.create "/events/",
         event:
           workorder_id: workorder.val(),
           actcode_id: actcode.val(),
           title: title.val(),
           description: description.val(),
           hours: hours.val()
           starts_at: "" + start,
           ends_at: "" + end,
           all_day: allDay,
           maxsynch: "N",
           employee_id: $('#calendar').data('employeeid')
           if $("#overtime").attr "checked"
             overtime: "TRUE"
       $(this).dialog "close"
       $('#calendar').fullCalendar('refetchEvents')

      Cancel: ->
        $(this).dialog "close"

这是不起作用的代码:

$("#overtime").attr "checked"
 overtime: "TRUE"

我也试过:

overtime: "TRUE" if $("#overtime").attr "checked"

如果我没有测试并且只使用 `overtime: "TRUE" - 它会在数据库中将布尔值设置为 true。

我也试过这个:

overtime: "TRUE" if $("#overtime").checked

我不认为它会在 html 中发现超时?

以下适用于我测试过的所有浏览器,除了 IE

overtime: "TRUE" if overtime.checked
4

1 回答 1

0

使用 True 代替:

$("#overtime").attr "checked" ->
             overtime: TRUE
于 2013-05-19T16:57:05.633 回答