2010-12-08 7 views
0

Salut Je voudrais exécuter cette fonction en utilisant jquery ou javascript. Si le texte saisi par l'utilisateur dépasse 100 caractères, je voudrais que le javascript à automatique mette le crochet ouvert et fermant au texte.Insertion automatique ouvrir et fermer le support si le caractère est supérieur à 100

Par exemple:

Si vous avez acheté ou mis à niveau RegexBuddy après le 13 Juin 2007, vous pouvez télécharger la dernière version en tapant votre adresse e-mail et l'ID utilisateur RegexBuddy ci-dessous. Si vous avez perdu votre identifiant, saisissez votre adresse e-mail et laissez le champ ID utilisateur vide. Vous recevrez ensuite un e-mail avec votre identifiant.

utilisation de javascript:

[Si vous avez acheté ou mis à niveau RegexBuddy après le 13 Juin 2007, vous pouvez télécharger la dernière version en tapant votre adresse e-mail et] [ID utilisateur RegexBuddy ci-dessous. Si vous avez perdu votre identifiant, saisissez votre adresse e-mail et laissez le champ ID utilisateur vide. Vous] recevrez [un message électronique avec votre ID d'utilisateur.]

Est-ce que cela peut être réalisé? Toute aide est appréciée.

Merci.

Répondre

1

Voici une solution simple à base regex; tweak comme bon vous semble:

var s = "If you purchased or upgraded RegexBuddy after 13 June 2007, you can download the latest version by typing in your email address and RegexBuddy user ID below. If you lost your user ID, type in your email address and leave the user ID field blank. You will then receive an email message with your user ID."; 

var chunked = s.replace(/(.{1,100})(?:\b|$)/g,'[$1]'); 
// "[If you purchased or upgraded RegexBuddy after 13 June 2007, you can download the latest version by ][typing in your email address and RegexBuddy user ID below. If you lost your user ID, type in your ][email address and leave the user ID field blank. You will then receive an email message with your ][user ID.]" 
+0

merci pour la solution, cela fonctionne :) – cyberfly

0

Vous demandez quelque chose comme ci-dessous. Mais ce n'est pas à l'épreuve des balles. Je préférerais changer l'événement à soumettre sur le formulaire, de sorte que vous puissiez être assuré qu'il ne gâchera pas avec ce que votre utilisateur entre, en particulier sur un événement copier/coller.

<input id="myInput"/> 

$(document).ready(function(){ 
$('#myInput').keypress(function() { 
    var string = $(this).val(); 
    if (string.length >= 100 && !$(this).hasClass("bracketed")){ 
    string = "[" + string + "]"; 
    $(this).val(string); 
    $(this).addClass("bracketed"); 
    } 
    // Stripping brackets if delete key is used 
    else if (string.length <= 101 && $(this).hasClass("bracketed")){ 
    string = string.slice(1,100) 
    $(this).val(string); 
    $(this).removeClass("bracketed"); 
    } 
}); 
}); 

Vous pouvez jouer avec la solution ci-dessus ici: http://jsfiddle.net/DAhq5/

+0

Salut, merci pour cette :) – cyberfly

Questions connexes