簡體   English   中英

如何在 Ruby 代碼中打印 JavaScript 變量

[英]How to print a JavaScript variable within Ruby code

我有一個單選按鈕列表,根據用戶選擇的單選按鈕,應該顯示一個按鈕。

  <div class="cobrado-anualmente-label">
    <div class="radio_seleccion_anual_payment margin-bottom-70">
      <div class="radio billed-anual_60-radio">
        <input id="plan_pro_talent" class="radio_money_value" name="radio-anual-payment-type" type="radio">
        <label for="radio-anual_60"><span class="radio-label"></span>$60</label>
      </div>

      <div class="radio billed-anual_100-radio">
        <input id="radio-anual_100" class="radio_money_value" name="radio-anual-payment-type" type="radio">
        <label for="radio-anual_100"><span class="radio-label"></span>$100</label>
      </div>

      <div class="radio billed-anual_250-radio">
        <input id="radio-anual_250" class="radio_money_value" name="radio-anual-payment-type" type="radio">
        <label for="radio-anual_250"><span class="radio-label"></span>$250</label>
      </div>

      <div class="radio billed-anual_500-radio">
        <input id="radio-anual_500" class="radio_money_value" name="radio-anual-payment-type" type="radio">
        <label for="radio-anual_500"><span class="radio-label"></span>$500</label>
      </div>
    </div>
  </div>

我正在嘗試使用 javascript 生成按鈕,以避免多次重復相同的代碼(有很多按鈕)。 目前按鈕在 ruby 中以這種方式處理:

  <%= button_tag "Contribute $60 a month", class: 'radio-anual_60 no_me_veo payment-action btn-plan button full-width margin-top-20', data:{ plan: @plan_pro_talent.id,key: @plan_pro_talent.name,month: @plan_pro_talent.monthly_amount,year: @plan_pro_talent.yearly_amount,plan_title: t('plan.plan3-titulo1') || '' } %>

選擇單選按鈕選項時必須生成按鈕

當我嘗試在 ruby "<%= %>" 中顯示 javascript 變量的內容時,它不允許我訪問該變量。 我得到一個與我的 ruby 變量同名的單選按鈕的 ID。 我正在嘗試以下操作:

      <script>

        $( ".radio_money_value" ).click(function() {

         var newDiv = $("<button name='button' type='submit' class='payment-action btn-plan button full-width margin-top-20' data-plan='<%=@"'"+this.id+"'".id%>'>Contribute $250 a month</button>");

         $('.btns-stripe').append(newDiv);
        });
      </script>

有沒有辦法在 ruby 中打印 javascript 變量的值?

Ruby 在您的服務器上運行,JavaScript 在瀏覽器中運行,在不同的地方,在不同的時間; 你無法回到過去。

但是為什么你甚至需要它? 您可以訪問 JavaScript 變量......好吧...... JavaScript。

var newDiv = $("<button blah-blah-blah-blah data-plan='" + this.id + "'>blah-blah</button>")

或者更好一點(使用反引號``來構建模板字符串):

var newDiv = $(`<button blah-blah-blah-blah data-plan="${this.id}">blah-blah</button>`)

暫無
暫無

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

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