Estoy tratando de crear un programa en javascript que convierta <a href=''>Hello how are you</a> en <a href='hello+how+are+you'>hello how are you</a> Después de buscarlo encontré este código pero no funcionó.

<a id='text' href='output'>is you good</a>
<a href=''>is you good</a>
<script>
$text = getElementById("demo").innerHTML ;
$output = str_replace(" ", "+", $text);


</script>
-8
Ajay Malik 16 feb. 2017 a las 19:06

3 respuestas

La mejor respuesta

"demo" no es una identificación que existe en su ejemplo. Además, estoy bastante seguro de que está tratando de usar PHP como JavaScript allí.

<a id='demo' href=''>is you good</a>

<script>
  const spaceToPlus = (content) => {
    return content.replace(/ /g, '+');
  }
  let anchor = document.getElementById('demo')
  let attributeHref = spaceToPlus(anchor.innerHTML);

  anchor.setAttribute('href', attributeHref);
</script>
0
D Lowther 16 feb. 2017 a las 16:20

Minimo ejemplo. Usando expresiones regulares para reemplazar todos los espacios.

<a id='text' href='output'>is you good</a>
<script>
var text = document.getElementById("text").innerHTML;
console.log(text.replace(/[\s]/g, "+"));
</script>
-1
Danny 16 feb. 2017 a las 16:12

El método getElementById () debe llamarse en un objeto de documento.

Google básico resolvería el problema. Investigue un poco antes de publicar aquí. https://www.w3schools.com/jsref/dom_obj_document.asp

0
Master Yushi 16 feb. 2017 a las 16:15