Partage
  • Partager sur Facebook
  • Partager sur Twitter

Récupérer une partie d'une chaine de caractère

Sujet résolu
    21 février 2018 à 17:10:34

    Bonjour,

    Le titre du sujet semble assez simple cependant mon cas est un peu bizarre, il ce peut qu'il existe une manière très simple de le réalisé cependant ayant du mal à définir ma recherche d'une manière simple mes recherches sur internet non pas abouties.

    Mon problème est que je dois modifier le texte d'une popup cependant ce texte est récupérer dans une libraire interne, que je ne peut donc modifier à la source. Je cherche à faire une fonction (c'est ce qui me semble le plus approprié) pour mettre en forme tout mes message qui sont relativement similaire.

    La variable que je récupère de ma librairie est le suivant:

    var $test = ('<p><b> Aide sur le formulaire </b></p><br><i><br>Ce formulaire vous permet de saisir<br><i>vos différentes dates d\'astreinte.</i>');

    Je souhaiterais passer la variable $test en paramètre de ma fonction et que celle ci me retourne le message dans le format souhaiter.

    Mon seul problème est d'isoler le premier paragraphes du reste de mon texte ce que je cherche c'est séparer mon texte afin d'avoir le résultat suivant :

    var a = ('<p><b> Aide sur le formulaire </b></p>')
    var b = ('<br><i><br>Ce formulaire vous permet de saisir<br><i>vos différentes dates d\'astreinte.</i>');

    De mon coté j'ai essayé de mettre ce code dans un div avec une classe afin d'essayer de le récupérer avec un sélecteur cependant cela n'a pas marcher.

    var $test = ('<p><b> Aide sur le formulaire </b></p><br><i><br>Ce formulaire vous permet de saisir<br><i>vos différentes dates d\'astreinte.</i>');
    
    var essaie = $('<div>').addClass('yolo').append($test);
    
    var a = essaie[0];//pour voire comment ça marcher
    
    var b = $('.yolo p:first-child')

    Je sait que c'est possible j'ai réussi dans ma console sur l'outil de dev mais impossible de me souvenir de comment j'ai fait et j'ai malheureusement fermer la page :'(




    -
    Edité par MartinLévêque 21 février 2018 à 17:17:44

    • Partager sur Facebook
    • Partager sur Twitter
      21 février 2018 à 17:33:34

      Bonjour,

      Ca peut t'aider: https://www.w3schools.com/jsref/jsref_indexof.asp

      • Partager sur Facebook
      • Partager sur Twitter
      Si vous voulez me mp, venez sur Discord (username: Stelyus#8984)
        21 février 2018 à 17:38:33

        C'est bon j'ai réussi à faire ce que je voulais, ça marche bien mais je pense qu je peut l'améliorer un peu je vous file le code que j'ai fait et je clos le sujet :)

        var str = ('<p><b> Aide sur le formulaire </b></p><br><i><br>Ce formulaire vous permet de saisir<br>vos différentes dates d\'astreinte.</i>');
        $('section').append(str);
        
        $('button').on('click', function(e){
        	formatageTexte(str);
        });
        
        function formatageTexte (texte){
        	var premPart = "";
        	var secondPart = "";
           	var textUnique = "";
              	var premPartFinal = "";
              	var secondPartFinal = "";
              	var n = "";
              	var placeTitre = '0';
              	var tailleText = "";
              	var result = $('<div>');
              	
              	placeTitre = str.indexOf('<b> Aide');
              	tailleText = str.length;
        
              	if(placeTitre !== 0){
              		n = str.indexOf('</p>');
              		for(i = 0; i < n; i++){
              			premPart += str[i];
              		}
              		for(i = n; i < tailleText; i++){
              			secondPart += str[i];
              		}
              		premPart = $(premPart).text();
              		secondPart = $(secondPart).text();
              		premPartFinal = $('<p>');
              		premPartFinal.append('<b>' + premPart + '</b>');
              		secondPartFinal = $('<p>');
              		secondPartFinal.append(secondPart);
              		result.append(premPartFinal,secondPartFinal);
              	}else{
              		for(i = 0; i < tailleText; i++){
              			textUnique += str[i]
              		}
              		textUnique = $(textUnique).text();
              		var yolo = $('<p>');
              		result.append(yolo);
              	}
        	$('section').append(result);
        }

        -
        Edité par MartinLévêque 22 février 2018 à 13:57:48

        • Partager sur Facebook
        • Partager sur Twitter

        Récupérer une partie d'une chaine de caractère

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown