2016-08-08 31 views
0

Ich habe eine Schienen-Anwendung, in der ich folgende Controller-Aktion haben.Javascript Ajax Anfrage in Schienen nicht in der Lage, Werte zu übergeben

Ich habe Javascript, wo ich versuche, eine Ajax Anfrage wie folgt zu machen. filename.html.haml

else{ 
    hotel_id = id.slice(6)    
    $.ajax({ 
     url: "/single_hotel/"+hotel_id, 
     data: {check_in_date: #{@check_in_date}, check_out_date: #{@check_out_date}, longitude: #{@longitude}, latitude: #{@latitude}, rooms: #{@rooms}, adults: #{@adults}, children: #{@children}, currency: #{@currency} }, 
     type: 'get' 
    });    
    } 

wenn ich überprüfen Sie die Registerkarte Quellen in Chromkonsole ich das sehen.

  $.ajax({ 
       url: "/single_hotel/"+hotel_id, 
       data: {check_in_date: 2016-08-08, check_out_date: 2016-08-09, longitude: 34.854, latitude: 32.3213, rooms: 1, adults: 1, children: 0, currency: INR }, 
       type: 'get' 
      }); 

Wenn ich versuche, die Ajax-Request ich zu machen "VM18204: 52 Uncaught Reference: INR ist nicht definiert".

Auch wenn ich Währung entfernen und die Anfrage mache, bekomme ich folgende Werte für den Check-in & Check-out-Daten.

[1] pry(#<Bookings::HotelsController>)> params 
=> {"check_in_date"=>"2000", 
"check_out_date"=>"1999", 
"longitude"=>"34.854", 
"latitude"=>"32.3213", 
} 

Kann mir bitte jemand hier helfen.

Antwort

2

Statt dieser

data: {check_in_date: #{@check_in_date}, check_out_date: #{@check_out_date}, longitude: #{@longitude}, latitude: #{@latitude}, rooms: #{@rooms}, adults: #{@adults}, children: #{@children}, currency: #{@currency} } 

versuchen diese

data: {check_in_date: "#{@check_in_date}", check_out_date: "#{@check_out_date}", longitude: "#{@longitude}", latitude: "#{@latitude}", rooms: "#{@rooms}", adults: "#{@adults}", children: "#{@children}", currency: "#{@currency}" } 
+0

Es ist eine haml Datei – RamanSM

+0

ich diese bekam "Uncaught Syntaxerror: unerwartetes Token <" – RamanSM

+0

meine Antwort aktualisiert. habe es versucht @RamanM –