11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
Dans ma page, j'ai un élément input qui a un nom du genre action Smiley delete [240]
Je voudrais le récupérer avec jQuery (pas de problème, je récupère l'attribut "name") puis traiter la chaîne de façon à obtenir deux variables : action (qui vaudrait "delete") et valeur (qui vaudrait "240").

Je suis un peu paumé avec JavaScript en ce qui concerne le traitement des chaînes : utilisation d'une expression régulière ? d'une fonction de découpe ?

Comment me dépatouiller de ça ?

EDIT : pour le moment, j'utilise le code suivant qui n'est pas très propre. Si quelqu'un a une meilleure solution...
		tmp_name=name.replace(new RegExp("]","g"),"");
		tmp_name=tmp_name.split("[");
		action=tmp_name[1];
		value=tmp_name[2];

Modifié par terzag (18 Mar 2010 - 11:55)
Bonjour,

Le code suivant devrait faire l'affaire :
var res = (/^([^\[]*)\[([^\]]*)\]$/).exec(name);
if (res) {
  action = res[1];
  value = res[2];
}

Voir sur MDC pour plus d'infos : exec
Modifié par Julien Royer (18 Mar 2010 - 14:13)