2010-12-09 2 views
0

Je me suis efforcé ces 2 dernières heures de configurer le codage d'URL avec la méthode link_to_remote des rails.Impossible de configurer l'encodage de l'URL pour les paramètres du prototype que link_to_remote crée

Je suis supposé être en mesure de soumettre un numéro de téléphone portable entré par l'utilisateur mais au format '+4412323424'.

Actuellement, le '+' n'est pas codé et, par conséquent, le contrôleur reçoit un espace blanc à la place du '+'.

Je travaille avec Rails pendant un certain temps maintenant, mais j'ai encore beaucoup de choses que je dois envelopper ma tête ...

<% = link_to_remote « Ajouter », {: mise à jour => 'employees',: url => {: action => 'add_mobile'},: avec => "'employee_mobile =' + échappement ($ ('enter_mobile'). value)"},: class => 'btn_search'% >

Ceci est le code HTML qui obtient généré:

< a onclick = "new Ajax.Updater ('employees', '/ sms/add_mobile', {asynchrone: true, evalScripts: true, paramètres: 'employee_mobile =' + escape ($ ('enter_mobile'). Value)}) return false; » href = "#" class = "btn_search" > Ajouter </a >

Je suppose qu'il doit être les paramètres dans Ajax.Updater qui sont incorrects

Quelqu'un peut-il? me guider dans la bonne direction?

Merci!

Répondre

0

Vos paramètres est censé être un objet d'objets.

Vous le voulez être quelque chose comme ceci:

parameters: { employee_mobile: escape($('enter_mobile').value } 

alors essayez ceci (Je ne connais pas la syntaxe des rails pour que je devine un peu ici):

<%= link_to_remote "Add", {:update => 'employees', :url => {:action => 'add_mobile'}, 
:with => "'employee_mobile:' + escape($('enter_mobile').value)"}, 
:class => 'btn_search' %> 
Questions connexes