我從Ajax調用中收到一個Google ID,然後希望使用該ID更新我的視圖上的按鈕。通過render_javascript將javascript變量傳遞給partial
以下是new.js.erb中的代碼,它鏈接到new.html.erb。
問題是,我不知道如何傳遞變量的內容。餐廳是一個JSON。該警報返回正確的ID,當我在終端上搜索我的分貝與返回的谷歌身份證我找到餐廳。
下面是代碼:
alert(restaurant["google_id"]);
var google_id = restaurant["google_id"];
$("#rating_bar").html("<%= escape_javascript(render 'reviews/buttons/full_profile_rate_restaurant', :google_id => "+google_id+".html_safe) %>");
什麼情況是,該變量傳遞是字符串「google_id」,而不是字母和數字的組合,這是谷歌的ID。我已經嘗試了多種方法,這只是衆多錯誤之一 - 我認爲這個問題對於那些瞭解他們JS的人來說非常簡單。
您的警報是否給予您正確的回覆? *餐廳*是散列嗎?一個東西? - 請解釋*餐廳*是如何填充數據的。 – SquareCat 2013-03-23 19:06:06
完成,指揮官! – Laurent 2013-03-23 19:15:23
已將JSON數據解碼爲對象了嗎?或者它仍然是一個包含JSON數據的字符串?如果它仍然是一個字符串,首先確保你解析它:var parsed = jQuery.parseJSON(restaurant); – SquareCat 2013-03-23 19:17:52