使用表单部分值显示警报

问题描述

如何将选定的值用于警报?

有没有办法通过 getElementById 或等效方法获得它?

表格

= f.select :some_key,some_array
`= f.submit 'Submit',data: { confirm: t('views.confirm.caution',:choice => some_array[<CHOSEN INDEX HERE>]) }`

en.yml

en:
  views:
    confirm:
      caution: "Are you sure to submit %{choice} ?"

alert

解决方法

en.yml

en:
  views:
    confirm:
      caution: "Are you sure to submit {{choice}} ?"

form.slim

= f.select :some_key,some_array
- # other code
= f.submit 'Submit',data: { confirm: '' ) }`

:javascript
  document.getElementById('your_select_id').addEventListener('change',function(){
    var value = '' // get select value
    var btn = document.getElementById('you confirm button id')
    var original_message = "#{t('views.confirm.caution')}"
    var confirm_message = original_message.replace('{{choice}}',value)
    btn.setAttribute('data-confirm',confirm_message)
  })

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...