javascript
  • jquery
  • ruby-on-rails
  • 2012-07-30 129 views 1 likes 
    1

    我需要將一個JavaScript變量傳遞給軌道控制器。這裏是我的應用程序代碼:將JavaScript變量傳遞給軌道控制器

    view.html.erb

    <script type="text/javascript"> 
        var imageURL; 
        var sCode = function() { 
         $("#qr").html("<p align='center'><img src='https://chart.googleapis.com/chart?chs=250x250&cht=qr&chl=123&choe=UTF-8'/></p>"); 
         imageURL = "https://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=123&choe=UTF-8"; 
        } 
    </script> 
    
    <div class=" modal-body" id="qr"> 
    </div> 
    
    <div class="modal-footer" id="footer"> 
        <%= form_tag({:controller => 'branches',:action => 'mailme' }, {:method => :post}) 
        do %> 
         <%= submit_tag "Mail", :id => "mailme", :class => "btn btn-primary pull-left" %> 
        <% end %> 
    </div> 
    

    在這裏,我需要將imageURL變量從控制器branches傳遞給方法mailme。我怎樣才能得到這個變量?我試圖用submit_tag附加該變量,並嘗試hidden_filed_tag來獲得該結果,但沒有任何成效。

    感謝

    回答

    4

    你必須使用JavaScript來操作,這將在表單提交的隱藏字段標籤。

    形式:

    <%= hidden_field_tag "image_url" %> 
    

    JS:

    <script type="text/javascript"> 
        var imageURL; 
        var sCode = function() { 
         $("#qr").html("<p align='center'><img src='https://chart.googleapis.com/chart? 
         chs=250x250&cht=qr&chl=123&choe=UTF-8'/></p>"); 
         imageURL = "https://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=123&choe=UTF-8"; 
         $('#image_url').val(imageURL); 
        } 
    </script> 
    

    當然,你必須執行在sCode聲明莫名其妙的功能。

    在控制器方面,剛剛接觸params[:image_url]得到URL

    +0

    它。我得到了已經改變了這$( 'IMAGE_URL')VAL(IMAGEURL)。到$('#image_url')。val(imageURL); – amtest 2012-07-31 06:16:04

    +0

    哎呀,尷尬的錯字...我會編輯答案 – 2012-07-31 11:23:21

    相關問題