Abdul's comment is correct. Let me explain you in detail on how Rails rendering and JS works.
When you enter the URL on address bar, say http://url.com/articles/1, Rails recieves this request and looks for Articles#show action, then converts the show.html.erb file to an .html file(+ replaces dynamic stuff in this file) and then sends this HTML file to the browser. All this stuff is happening on the server side. Your in browser JS has nothing to do with it till now.
Now when you're browser recieves the HTML(+ CSS and JS files), the browser will render the HTML file and it will now execute the JS in browser. So now your btn_plus.addEventListener function is executed. It will do nothing to the rails part, it will just update the DOM. That's why when you inspect in dev tools you'll see
<%= select_tag :rg1, options_from_collection_for_select(@users, 'id', 'email') %>
rather than seeing an <select></select> tag.
You can do something like this. Include your <%= select_tag :rg1, options_from_collection_for_select(@users, 'id', 'email') %> where ever you want it in your .html.erb file. Then in your JS, you could do something like this:
const rg1 = document.getElementById('rg1');
const btn_plus = document.getElementById('btn_plus'); // change your ID here if it's different
// Hide the select tag
rg1.style.display = 'none';
// On btn click, show the select tag:
btn_plus.addEventListener('click', () => {
rg1.style.display = 'inline-block'; // or `block` or anything you want
});