Javascript AJAX日历更新页面rails 4
我正在使用jQuery的日期选择器显示日历。当用户单击某个日期时,页面应提供该特定日期的有效信息(在本例中为可用座位表) 我可以看到,我的日期是在更改时用AJAX传递的,但模板从未呈现过。部分用户如何知道从控制器获取@schedule?我做错了什么 看法 控制器 js.erbJavascript AJAX日历更新页面rails 4,javascript,jquery,ruby-on-rails,ajax,Javascript,Jquery,Ruby On Rails,Ajax,我正在使用jQuery的日期选择器显示日历。当用户单击某个日期时,页面应提供该特定日期的有效信息(在本例中为可用座位表) 我可以看到,我的日期是在更改时用AJAX传递的,但模板从未呈现过。部分用户如何知道从控制器获取@schedule?我做错了什么 看法 控制器 js.erb 我可以立即看到的一件事是您缺少数据类型 改变 $('.datepicker').change(function(){ $.ajax({ data: {Date: $('.datepicker'
我可以立即看到的一件事是您缺少数据类型 改变
$('.datepicker').change(function(){
$.ajax({
data: {Date: $('.datepicker').val()},
})
});
到
$(document).ready(function() {
if($('.datepicker').length){
$('.datepicker').datepicker({
dateFormat: 'yy-mm-dd'
});
}
$('.datepicker').change(function(){
$.ajax({
data: {Date: $('.datepicker').val()},
})
});
});
def show
return unless @product
@variants =
@product.variants_including_master.active(current_currency).includes([:option_values,
:images])
@product_properties = @product.product_properties.includes(:property)
@schedule = FlightSchedule.where(:date => params[:Date]).available_slots
respond_to do |format|
format.html
format.js
end
referer = request.env['HTTP_REFERER']
if referer
begin
referer_path = URI.parse(request.env['HTTP_REFERER']).path
# Fix for #2249
rescue URI::InvalidURIError
# Do nothing
else
if referer_path && referer_path.match(/\/t\/(.*)/)
@taxon = Spree::Taxon.find_by_permalink($1)
end
end
end
end
$('#seat_table').html('<%= escape_javascript render("seat_table")%>');
<table>
<th> Available Times </th>
<th colspan='5'> Available Seats </th>
<% @schedule.each do |available| %>
<tr>
<td>
<%= available.time.strftime("%l:00") %>
</td>
<% @product.variants_and_option_values.each_with_index do |variant, index| %>
<td>
<% if available.seat_available?(available, variant.option_value('seat')) %>
<%= check_box_tag "variants[#{variant.id}]", "1" %>
<label for="<%= ['variants', @product.id, variant.id].join('_') %>">
<span class="variant-description">
<%= variant.option_value('seat') %>
</span>
</label>
<% else %>
<label for="<%= ['variants', @product.id, variant.id].join('_') %>">
<span class="variant-description">
<%= variant.option_value('seat') %>
</span>
</label>
<% end %>
</td>
<% end %>
</tr>
<% end %>
</table>
Started GET "/products/flight-simulation?Date=2014-03-31" for 127.0.0.1 at 2014-03-09 14:57:57 -0400
Processing by Spree::ProductsController#show as */*
Parameters: {"Date"=>"2014-03-31", "id"=>"flight-simulation"}
$('.datepicker').change(function(){
$.ajax({
data: {Date: $('.datepicker').val()},
})
});
$('.datepicker').change(function(){
$.ajax({
data: {Date: $('.datepicker').val()},
dataType : 'script'
})
});