Molti CMS sfruttano JavaScript e jQuery per creare dei permalink (link permanenti) a partire dal valore di un campo di testo. WordPress ad esempio utilizza AJAX per inviare il titolo di un post alla funzione PHP che genererĂ il permalink. Con jQuery possiamo ottenere qualcosa di molto simile. Vediamo come.
La funzione di utility che creeremo non fa altro che scomporre una stringa in token e riassemblarla dopo averla emendata di alcuni caratteri speciali:
(function($) {
$.permalink = function(str) {
var parts = str.split(' ');
var $permalink = [],
len = parts.length,
i = 0;
for (i; i < len; i++) {
var part = parts[i];
var $part = part.replace("'", '').
replace('à', 'a').
replace('è', 'e').
replace('é', 'e').
replace('ì', 'i').
replace('ù', 'u').
replace('ò', 'o').
replace('"', '').
replace(' ', '');
$permalink.push($part);
}
var $title = $permalink.join('-');
return $title.toLowerCase();
};
})(jQuery);
Ecco un esempio d'uso:
$('#run').click(function() {
var $str = $('#title').val();
var link = $.permalink($str);
$('span', '#target').text(link);
});​
Potete visionare l'esempio finale in questa pagina.