/ / Llamar a la función de JavaScript desde .innerHTML href - javascript, href, innerhtml, getelementbyid

Llame a la función javascript desde .innerHTML href - javascript, href, innerhtml, getelementbyid

Estoy alterando un elemento P en una página llamándolo "s id con una función javascript y estoy tratando de llamar a otra función javascript llamada closeWindow desde el HREF de un .innerHTML como se muestra a continuación.

document.getElementById("link").innerHTML = "<p>You may close this window <a href="javascript:closeWindow();">here</a></p>"

Sin embargo, no se llama a javascript: closeWindow o debería decir que ni siquiera se lee y la función falla.

cualquier sugerencia sera apreciada

Respuestas

4 para la respuesta № 1

Sus citas se niegan entre sí, como puede ver en la vista de código. Utilice comillas simples o evite las comillas dobles:

document.getElementById("link").innerHTML = "<p>You may close this window <a href="javascript:closeWindow();">here</a></p>"

0 para la respuesta № 2

¿Qué tal si le damos a la función javascript algunas variables como esta?

var myvar=123;
document.getElementById("link").innerHTML = "<p>You may close this window <a href="javascript:closeWindow("+myvar+",sometext);">here</a></p>";

el myvar funciona, pero no puedo conseguir que algún texto funcione.

esto no funcionó:

var mytxt="sometext";
var myvar=123;
document.getElementById("link").innerHTML = "<p>You may close this window <a href="javascript:closeWindow("+myvar+","+mytxt+");">here</a></p>";

Por favor, ayuda, me sale el error de referencia:algún texto no está definido. Piensa que algún texto es una variable. Poner texto entre comillas dobles da como resultado un campo vacío después de la coma y un error de sintaxis.

Encontré la respuesta:

var mytxt="sometext";
var myvar=123;
document.getElementById("link").innerHTML = "<p>You may close this window <a href="javascript:closeWindow("+myvar+",""+mytxt+"");">here</a></p>";