簡體   English   中英

在javascript HAML中將javascript變量傳遞給ruby函數調用

[英]passing javascript variable to ruby function call in javascript HAML

我正在使用Sinatra,Ruby,HAML和JavaScript

所以我想出了如何在HAML JavaScript中調用ruby函數

@@layout
%html
    %head
        %title #{@title}
          :javascript
              var retval
              function diff_by_company_id() {
                 retval = "#{ruby_function()}";
              }

但是,我現在需要將ruby函數傳遞給一個javascript變量,但我不確定該怎么做。 這是我嘗試過的,顯然不起作用。

def test(input)
    return "Output Number: "+input.to_s + "!"
end

@@layout
%html
    %head
        %title #{@title}
          :javascript
              var retval
              function diff_by_company_id() {
                 var input = 1;
                 retval = "#{ruby_function("input")}";
              }

而不傳遞輸入值1,而是傳遞字符串輸入。

所以我得到的是: retval = Output Number: input!

我想要的是: retval = Output Number: 1!

任何有關如何正確通過此方法的幫助將不勝感激。

Ruby在服務器端執行,而javascript在客戶端執行。 現在起作用的原因是在加載頁面時執行了ruby代碼。

如果不向服務器發出AJAX請求,則不可能“將javascript變量傳遞給ruby”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM