我一直在研究一個Rails應用幾個月。今天,當我在localhost上運行應用程序時,似乎jquery在每個頁面上執行兩次。本地主機運行jquery兩次?
我在iMac上運行。
一些症狀如下:
- 數據表告訴我「無法遏制初始化數據表」
- 全日曆頁面上顯示2個日曆,而不是1
- 引導下拉菜單不工作
這真的讓我感到莫名其妙!
感謝您的幫助!
UPDATE1
相同的應用程序運行正常,當我第部署到Rails的虛擬服務器。所以,在我看來,這與我的iMac環境有關。
我不確定要顯示什麼代碼。因爲jquery/javascript代碼在上面的所有數字示例中似乎都會觸發兩次。
下面是日曆視圖代碼(日曆現在在頁面上顯示兩次):
<h2><%= current_user.employee.employee_full_name %> - Labor Month</h2>
<%= content_tag "div", id: "calendar", data: {employeeid: current_user.employee.id} do %>
<% end %>
而且咖啡腳本:
$(document).ready ->
$('#calendar').fullCalendar
ignoreTimezone: true,
editable: true,
defaultView: 'month',
height: 500,
slotMinutes: 30,
selectable: true,
selectHelper: true,
select: (start, end, allDay) ->
title = $("#title")
description = $("#description")
hours = $("#hours")
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,
employee_id: $('#calendar').data('employeeid')
$('#calendar').fullCalendar('refetchEvents')
$(this).dialog "close"
Cancel: ->
$(this).dialog "close"
eventSources: [{
url: '/events',
}],
timeFormat: 'h:mm t{ - h:mm t} ',
dragOpacity: "0.5"
eventDrop: (event, dayDelta, minuteDelta, allDay, revertFunc) ->
updateEvent(event);
eventResize: (event, dayDelta, minuteDelta, revertFunc) ->
updateEvent(event);
updateEvent = (the_event) ->
$.update "/events/" + the_event.id,
event:
title: the_event.title,
starts_at: "" + the_event.start,
ends_at: "" + the_event.end,
description: the_event.description
UPDATE3
Some gems I'm using related to javascript:
gem 'twitter-bootstrap-rails'
gem 'jquery-rails'
gem 'fullcalendar-rails'
gem 'jquery-rest-rails'
gem 'gmaps4rails'
gem 'bootstrap-editable-rails'
gem 'jquery-datatables-rails'
gem 'jqtree-rails'
UPDATE4
我應該看看Chrome檢查元素嗎?
UPDATE5
@abhi和OGZ的嚮導說,刪除的公共資產或嘗試把這個放入development.rb = config.assets.debug =假。當我將該行添加到development.rb時,錯誤消失了。
現在我不確定接下來應該做什麼。我希望能夠調試資產。
幾乎不可能在沒有看到代碼的情況下說什麼。 – JJJ 2013-03-08 14:30:51
你的腳本是什麼樣的?你導入了什麼js庫? – twDuke 2013-03-08 14:31:05
這看起來不像jquery執行兩次,但更像是jquery數據表插件運行兩次。再次,很難說沒有一些代碼的任何東西... – phtrivier 2013-03-08 14:32:11