问题描述
如何将选定的值用于警报?
有没有办法通过 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} ?"
解决方法
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)
})