j'ai une variable et a l’intérieur j'au un id, comment puis je récupérer cet id?
let mylet =
`
<button type="button" class="fa fa-trash-o" id="supprimer">
`
je veux récupérer l'id supprimer je n'y arrive pas y a t'il des solution svp ?
j'ai essayé avec : $(#supprimer) mais ça ne marche pas
Saluté

hia a écrit :

j'ai essayé avec : $(#supprimer) mais ça ne marche pas


Normal ..

$(#supprimer) il lui faut des double guillemets

$("#supprimer")
Modérateur
Salut,

t'es en Js j'imagine.

Tu essaye d'avoir "supprimer" à partir de la chaîne de caractère mylet ?

Tu peux faire ça :

let str = '<button type="button" class="fa fa-trash-o" id="supprimer">';
let start = str.indexOf('id="') + 4;
let stop = str.indexOf('"', start);
let id = str.substring(start, stop);

console.log(id);

https://jsfiddle.net/92yestvg/10/
Modifié par _laurent (23 Aug 2018 - 14:57)
var str = '<button type="button" class="fa fa-trash-o" id="supprimer">';
var matches = str.match(/<button.*\bid="([^"]*).*>/);
console.log(matches[1]);
Mais c'est compliqué pour pas grand chose vos méthodes

Soit tu fais un :

var ta_variable = document.getElementById('supprimer');


Soit tu fais un onclick/onchange/onkeyup sur le bouton :

<button type="button" onclick="getId()"class="fa fa-trash-o" id="supprimer">


et tu récupères en JS comme montré en premier exemple dans ta fonction ou mieux :

<button type="button" value="supprimer" onclick="getId(this.value)" class="fa fa-trash-o" id="supprimer">


avec ça en JS:
function getId(str){
<!-- balance ton code ->
}
_laurent a écrit :


Tu essaye d'avoir "supprimer" à partir de la chaîne de caractère mylet ?



putain j'avais pas compris qu'il voulait split un string (un string qui est une "balise"?)...
Une variante :

<body>
  <button id="id01">CLICKEZ MOI ( 1 )</button>
  <button id="id02">CLICKEZ MOI ( 2 )</button>
  <button id="id03">CLICKEZ MOI ( 3 )</button>
  <button id="id04">CLICKEZ MOI ( 4 )</button>
  
  <p id="affichage">affichage ici</p>

<script src="02.js"></script>


et ensuite le fichier 02.js suivant :


var affiche = document.getElementById('affichage');
var buttons = document.getElementsByTagName('button');
  len=buttons.length;
  for(i=0; i<len; i++){
      buttons[i].addEventListener('click', function(e){
      var idd = e.currentTarget.id;
      affiche.innerHTML = idd;
      });
  }
Comme la valeur de id est en texte pur (plain text), il vaut mieux utiliser textContent à la place de innerHTML.
https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent
'use strict';
var affiche = document.getElementById('affichage');
var buttons = document.getElementsByTagName('button');
for(var i=0, len = buttons.length; i<len; i++) {
      buttons[i].addEventListener('click', function(event) {
           affiche.textContent = event.currentTarget.id;
      });
}

Modifié par bazooka07 (25 Aug 2018 - 10:13)
Meilleure solution