2016-08-23 2 views
0

Ich bin von Schienen 2.3.10 zu Schienen 4 migriert, und ich habe eine App für das Senden von Nachrichten auf dem Handy zum Patienten Zeitplan. Meine App zeigt eine Liste der Patienten des Zeitplans an und für jede Zeile existiert ein check_box_tag, wenn ich eine oder mehrere auswähle und eine Nachricht sende. So habe ich ein Formular, das eine teilweise aufrufen und diese teilweise enthält eine Liste mit check_box_tag. Jedes ausgewählte Kontrollkästchen ist Speicher in der JavaScript-Variablen selected_ids und return on text_field_tag ​​im Hauptformular. Das Problem ist, auf Ereignis link_to die Parameter selected_ids ist leer, aber ich kann auf dem check_box_tag Im Folgenden Teil der Form sehen, die teilweise und javascript:Rails 4 erhalten Wert von text_field_tag, das Javascript enthält var

function MultiSelectIDs(FieldName) { 
 
    var selected_ids = new Array() 
 
    var objCheckBoxes = document.getElementsByName(FieldName); 
 
    for(var i = 0; i < objCheckBoxes.length; i++){ 
 
    if (objCheckBoxes[i].checked) { 
 
     var x = selected_ids.splice(selected_ids.length,0, objCheckBoxes[i].id); 
 
    } 
 
    } 
 
    document.getElementById('selected_ids').value = selected_ids.join(", ") 
 
};
<% if [email protected]? && [email protected]? %> 
 
    <% for tagendamento in @tagendamento do %> 
 
    <tr> 
 
    <%= check_box_tag "#{tagendamento.id}", 0, false, :name=> "chk_agendamento", :onclick => "MultiSelectIDs('chk_agendamento')" %> 
 
<% end %> 
 
    
 
<%= text_field_tag :selected_ids %> 
 
<%= link_to 'Pré-Visualizar SMS',send_sms_queries_path(:sel_ids=>params[:selected_ids],:perfil=>params[:perfil], :visualizar => '1', :dt_envio=>(params[:dt_envio].nil?)? (Date.today - 3) : params[:dt_envio],:t_envio=>params[:t_envio],:tipo_msg=>params[:tipo_msg],:mensagem=>(!params[:mensagem].nil? and !params[:mensagem].blank?)? params[:mensagem] : @standard,:selec_tipotemplate_sms=>params[:selec_tipotemplate_sms],:date_agend_hc=>params[:date_agend_hc]), :target=>'_blank', :style => \t "color:black"%>

<%= text_field_tag :selected_ids %> 
    <%= link_to 'Pré-Visualizar SMS', send_sms_queries_path(:sel_ids  => params[:selected_ids], 
                  :perfil   => params[:perfil], 
                  :visualizar  => '1', 
                  :dt_envio  => (params[:dt_envio].nil?)? (Date.today - 3) : params[:dt_envio], 
                  :t_envio  => params[:t_envio], 
                  :tipo_msg  => params[:tipo_msg], 
                  :mensagem  => (!params[:mensagem].nil? and !params[:mensagem].blank?)? params[:mensagem] : @standard, 
                  :selec_tipotemplate_sms => params[:selec_tipotemplate_sms], 
                  :date_agend_hc => params[:date_agend_hc]), 
            :target => '_blank', 
            :style => "color:black"%> 

Antwort

0

Schließlich hat funktioniert! Added-Gehalt von text_field_tag ​​in Onclick link_to wie folgt:

<%= link_to 'Pré-Visualizar SMS', send_sms_queries_path(:selected_ids \t =>params[:selected_ids]), 
 
:target \t => \t '_blank', 
 
:style \t => \t "color:black", 
 
:onclick => "this.href = this.href + '&selected_ids=' + selected_ids.value"%>

Vielen Dank Leute!