{"id":7557,"date":"2020-04-02T16:31:42","date_gmt":"2020-04-02T16:31:42","guid":{"rendered":"https:\/\/www.jose-aguilar.com\/blog\/?p=7557"},"modified":"2020-05-18T17:24:33","modified_gmt":"2020-05-18T17:24:33","slug":"boton-para-mostrar-contrasena-en-un-campo","status":"publish","type":"post","link":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/","title":{"rendered":"Bot\u00f3n para mostrar contrase\u00f1a en un campo"},"content":{"rendered":"<p>En este art\u00edculo vas a descubrir como<strong> agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto<\/strong> de forma sencilla utilizando <strong>JavaScript<\/strong>.<\/p>\n<p>Se trata de una funcionalidad muy buena que no puede faltar en tu p\u00e1gina web ya que en dispositivos peque\u00f1os, sobretodo, va a ayudar mucho al usuario cuando se est\u00e1 equivocando al teclear su contrase\u00f1a.<\/p>\n<p>Es un detalle que mejora mucho la usabilidad y puede evitar frustraciones al usuario en el momento de escribir su contrase\u00f1a, se ha equivocado y no puede ver donde.<\/p>\n<p>Cuando el usuario est\u00e1 en un dispositivo m\u00f3vil y escribe mal la palabra clave en un campo de tipo contrase\u00f1a y aparecen errores, le podemos permitir al usuario habilitar ver la contrase\u00f1a para poderla escribir viendo las letras que teclea.<\/p>\n<p>Bueno, esto se puede conseguir f\u00e1cilmente con un poco de <strong>HTML<\/strong>, <strong>CSS<\/strong> y <strong>JavaScript<\/strong>.<\/p>\n<h2>C\u00f3digo HTML para mostrar la contrase\u00f1a<\/h2>\n<p>Dentro del cuerpo de la p\u00e1gina o etiqueta &lt;body&gt; debes tener un formulario en el que puede haber varios campos, entre ellos uno de tipo contrase\u00f1a, como por ejemplo lo siguiente:<\/p>\n<div id=\"wpshdo_1\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_1\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_1\"><\/a><a id=\"wpshat_1\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_1\"  onClick=\"javascript:wpsh_toggleBlock(1)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_1\" onClick=\"javascript:wpsh_code(1)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_1\" onClick=\"javascript:wpsh_print(1)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_1\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"html4strict\" style=\"font-family:monospace;\"><span class=\"sc2\">&lt;<a href=\"http:\/\/december.com\/html\/4\/element\/div.html\"><span class=\"kw2\">div<\/span><\/a> <span class=\"kw3\">class<\/span><span class=\"sy0\">=<\/span><span class=\"st0\">&quot;campo&quot;<\/span>&gt;<\/span>\n    <span class=\"sc2\">&lt;<a href=\"http:\/\/december.com\/html\/4\/element\/label.html\"><span class=\"kw2\">label<\/span><\/a> <span class=\"kw3\">for<\/span><span class=\"sy0\">=<\/span><span class=\"st0\">&quot;password&quot;<\/span>&gt;<\/span>Contrase\u00f1a<span class=\"sc2\">&lt;<span class=\"sy0\">\/<\/span><a href=\"http:\/\/december.com\/html\/4\/element\/label.html\"><span class=\"kw2\">label<\/span><\/a>&gt;<\/span>\n    <span class=\"sc2\">&lt;<a href=\"http:\/\/december.com\/html\/4\/element\/input.html\"><span class=\"kw2\">input<\/span><\/a> <span class=\"kw3\">type<\/span><span class=\"sy0\">=<\/span><span class=\"st0\">&quot;password&quot;<\/span> <span class=\"kw3\">name<\/span><span class=\"sy0\">=<\/span><span class=\"st0\">&quot;password&quot;<\/span> <span class=\"kw3\">id<\/span><span class=\"sy0\">=<\/span><span class=\"st0\">&quot;password&quot;<\/span>&gt;<\/span>\n    <span class=\"sc2\">&lt;<a href=\"http:\/\/december.com\/html\/4\/element\/span.html\"><span class=\"kw2\">span<\/span><\/a>&gt;<\/span>Mostrar<span class=\"sc2\">&lt;<span class=\"sy0\">\/<\/span><a href=\"http:\/\/december.com\/html\/4\/element\/span.html\"><span class=\"kw2\">span<\/span><\/a>&gt;<\/span>\n<span class=\"sc2\">&lt;<span class=\"sy0\">\/<\/span><a href=\"http:\/\/december.com\/html\/4\/element\/div.html\"><span class=\"kw2\">div<\/span><\/a>&gt;<\/span><\/pre><\/div><\/div>\n<p>Si te fijas bien, tan solo he creado un contenedor que contiene una etiqueta label con el texto \u00abContrase\u00f1a\u00bb, un campo de tipo contrase\u00f1a y una etiqueta span que contiene el texto \u00abMostrar\u00bb.<\/p>\n<h2>Dise\u00f1o para el c\u00f3digo de marcado que permite mostrar la contrase\u00f1a<\/h2>\n<p>Para agregar un poco de dise\u00f1o a esto voy a agregar lo siguiente en mi hoja de estilos <strong>CSS<\/strong>:<\/p>\n<div id=\"wpshdo_2\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_2\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_2\"><\/a><a id=\"wpshat_2\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_2\"  onClick=\"javascript:wpsh_toggleBlock(2)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_2\" onClick=\"javascript:wpsh_code(2)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_2\" onClick=\"javascript:wpsh_print(2)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_2\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"css\" style=\"font-family:monospace;\"><span class=\"re1\">.campo<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"kw1\">position<\/span><span class=\"sy0\">:<\/span> <span class=\"kw2\">relative<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\nlabel <span class=\"br0\">&#123;<\/span>\n    <span class=\"kw1\">width<\/span><span class=\"sy0\">:<\/span> <span class=\"re3\"><span class=\"nu0\">100<\/span>%<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\ninput <span class=\"br0\">&#123;<\/span>\n    <span class=\"kw1\">width<\/span><span class=\"sy0\">:<\/span> <span class=\"re3\"><span class=\"nu0\">100<\/span>%<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">padding<\/span><span class=\"sy0\">:<\/span> <span class=\"re3\">7px<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&nbsp;\n<span class=\"re1\">.campo<\/span> span <span class=\"br0\">&#123;<\/span>\n    <span class=\"kw1\">position<\/span><span class=\"sy0\">:<\/span> <span class=\"kw2\">absolute<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">right<\/span><span class=\"sy0\">:<\/span> <span class=\"re3\">5px<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">top<\/span><span class=\"sy0\">:<\/span> <span class=\"re3\">39px<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">text-transform<\/span><span class=\"sy0\">:<\/span> <span class=\"kw2\">uppercase<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">cursor<\/span><span class=\"sy0\">:<\/span> <span class=\"kw2\">pointer<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">padding<\/span><span class=\"sy0\">:<\/span> <span class=\"re3\">2px<\/span> <span class=\"re3\">10px<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">background-color<\/span><span class=\"sy0\">:<\/span> <span class=\"re0\">#dadada<\/span><span class=\"sy0\">;<\/span>\n<span class=\"br0\">&#125;<\/span><\/pre><\/div><\/div>\n<p>Para conseguir como resultado algo como lo siguiente:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7558\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/contrasena-mostrar-ocultar.png\" alt=\"Mostrar y ocultar contrase\u00f1a con JavaScript\" width=\"516\" height=\"85\" srcset=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/contrasena-mostrar-ocultar.png 516w, https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/contrasena-mostrar-ocultar-300x49.png 300w\" sizes=\"auto, (max-width: 516px) 100vw, 516px\" \/><\/p>\n<h2>C\u00f3digo JavaScript que permite mostrar y ocultar la contrase\u00f1a<\/h2>\n<p>En el archivo .js de tu proyecto agrega el siguiente c\u00f3digo que justamente permite controlar el evento para mostrar y ocultar la contrase\u00f1a.<\/p>\n<div id=\"wpshdo_3\" class=\"wp-synhighlighter-outer\"><div id=\"wpshdt_3\" class=\"wp-synhighlighter-expanded\"><table border=\"0\" width=\"100%\"><tr><td align=\"left\" width=\"80%\"><a name=\"#codesyntax_3\"><\/a><a id=\"wpshat_3\" class=\"wp-synhighlighter-title\" href=\"#codesyntax_3\"  onClick=\"javascript:wpsh_toggleBlock(3)\" title=\"Click to show\/hide code block\">Source code<\/a><\/td><td align=\"right\"><a href=\"#codesyntax_3\" onClick=\"javascript:wpsh_code(3)\" title=\"Show code only\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/code.png\" \/><\/a>&nbsp;<a href=\"#codesyntax_3\" onClick=\"javascript:wpsh_print(3)\" title=\"Print code\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/printer.png\" \/><\/a>&nbsp;<a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/About.html\" target=\"_blank\" title=\"Show plugin information\"><img decoding=\"async\" border=\"0\" style=\"border: 0 none\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/plugins\/wp-synhighlight\/themes\/default\/images\/info.gif\" \/><\/a>&nbsp;<\/td><\/tr><\/table><\/div><div id=\"wpshdi_3\" class=\"wp-synhighlighter-inner\" style=\"display: block;\"><pre class=\"javascript\" style=\"font-family:monospace;\">document.<span class=\"me1\">querySelector<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'.campo span'<\/span><span class=\"br0\">&#41;<\/span>.<span class=\"me1\">addEventListener<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'click'<\/span><span class=\"sy0\">,<\/span> e <span class=\"sy0\">=&gt;<\/span> <span class=\"br0\">&#123;<\/span>\n    <span class=\"kw2\">const<\/span> passwordInput <span class=\"sy0\">=<\/span> document.<span class=\"me1\">querySelector<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'#password'<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"kw1\">if<\/span> <span class=\"br0\">&#40;<\/span>e.<span class=\"me1\">target<\/span>.<span class=\"me1\">classList<\/span>.<span class=\"me1\">contains<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'show'<\/span><span class=\"br0\">&#41;<\/span><span class=\"br0\">&#41;<\/span> <span class=\"br0\">&#123;<\/span>\n        e.<span class=\"me1\">target<\/span>.<span class=\"me1\">classList<\/span>.<span class=\"me1\">remove<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'show'<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span>\n        e.<span class=\"me1\">target<\/span>.<span class=\"me1\">textContent<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">'Ocultar'<\/span><span class=\"sy0\">;<\/span>\n        passwordInput.<span class=\"me1\">type<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">'text'<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"br0\">&#125;<\/span> <span class=\"kw1\">else<\/span> <span class=\"br0\">&#123;<\/span>\n        e.<span class=\"me1\">target<\/span>.<span class=\"me1\">classList<\/span>.<span class=\"me1\">add<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">'show'<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span>\n        e.<span class=\"me1\">target<\/span>.<span class=\"me1\">textContent<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">'Mostrar'<\/span><span class=\"sy0\">;<\/span>\n        passwordInput.<span class=\"me1\">type<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">'password'<\/span><span class=\"sy0\">;<\/span>\n    <span class=\"br0\">&#125;<\/span>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/pre><\/div><\/div>\n<p>Este c\u00f3digo <strong>JavaScript <\/strong>est\u00e1 esperando a que la etiqueta span, que est\u00e1 dentro del campo de contrase\u00f1a, sea pulsado para ejecutar una funci\u00f3n.<\/p>\n<p>Dentro de este control del evento o funci\u00f3n, he creado una variable que contiene el elemento o campo contrase\u00f1a.<\/p>\n<p>La l\u00f3gica que sigue es la siguiente:<\/p>\n<p>Si el atributo span contiene la clase \u00abshow\u00bb:<\/p>\n<ul>\n<li>Elimino la clase \u00abshow\u00bb.<\/li>\n<li>Le agrego el texto \u00abOcultar\u00bb.<\/li>\n<li>Y cambio el tipo de input a \u00abtext\u00bb.<\/li>\n<\/ul>\n<p>En caso contrario, es decir, si el atributo span no contiene la clase \u00abshow\u00bb:<\/p>\n<ul>\n<li>Le a\u00f1ado la clase \u00abshow\u00bb.<\/li>\n<li>Le agrego el texto \u00abMostrar\u00bb.<\/li>\n<li>Y cambio el tipo de input a \u00abpassword\u00bb.<\/li>\n<\/ul>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Una vez visto, sencillo, \u00bfverdad?<\/p>\n<p>Me da la sensaci\u00f3n de que con el gran uso que le damos a los dispositivos m\u00f3viles hoy en d\u00eda, esta funcionalidad no puede faltar en tu p\u00e1gina web.<\/p>\n<p>\u00bfTienes una forma mejor para conseguirlo?<\/p>\n<p>\u00bfTe ha servido este tutorial? No dudes en dejar tu comentario o valoraci\u00f3n que aprecio mucho.<\/p>\n<p style=\"text-align: center;\"><a class=\"btn btn-secondary\" href=\"https:\/\/www.jose-aguilar.com\/scripts\/javascript\/show-password\/\" target=\"_blank\" rel=\"noopener noreferrer\"><i class=\"fa fa-eye\"><\/i> Ver demo<\/a> <a class=\"btn btn-primary\" href=\"https:\/\/www.jose-aguilar.com\/scripts\/javascript\/show-password\/show-password.zip\"><i class=\"fa fa-download\"><\/i> Descargar<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.<\/p>\n","protected":false},"author":1,"featured_media":7560,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[84,79],"class_list":["post-7557","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript","tag-formularios","tag-inputs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Bot\u00f3n para mostrar contrase\u00f1a en un campo - Jose Aguilar Blog<\/title>\n<meta name=\"description\" content=\"Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bot\u00f3n para mostrar contrase\u00f1a en un campo - Jose Aguilar Blog\" \/>\n<meta property=\"og:description\" content=\"Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/\" \/>\n<meta property=\"og:site_name\" content=\"Jose Aguilar Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/joseaguilarblog\" \/>\n<meta property=\"article:published_time\" content=\"2020-04-02T16:31:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-05-18T17:24:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png\" \/>\n\t<meta property=\"og:image:width\" content=\"250\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jose Aguilar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:site\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jose Aguilar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/\",\"name\":\"Bot\u00f3n para mostrar contrase\u00f1a en un campo - Jose Aguilar Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png\",\"datePublished\":\"2020-04-02T16:31:42+00:00\",\"dateModified\":\"2020-05-18T17:24:33+00:00\",\"author\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\"},\"description\":\"Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#primaryimage\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png\",\"contentUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png\",\"width\":250,\"height\":250,\"caption\":\"Mostrar y ocultar contrase\u00f1a con JavaScript\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.jose-aguilar.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bot\u00f3n para mostrar contrase\u00f1a en un campo\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/\",\"name\":\"Jose Aguilar Blog\",\"description\":\"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\",\"name\":\"Jose Aguilar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"caption\":\"Jose Aguilar\"},\"description\":\"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.\",\"sameAs\":[\"https:\/\/plus.google.com\/114357189801512615537\"],\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Bot\u00f3n para mostrar contrase\u00f1a en un campo - Jose Aguilar Blog","description":"Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Bot\u00f3n para mostrar contrase\u00f1a en un campo - Jose Aguilar Blog","og_description":"Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.","og_url":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/","og_site_name":"Jose Aguilar Blog","article_publisher":"https:\/\/www.facebook.com\/joseaguilarblog","article_published_time":"2020-04-02T16:31:42+00:00","article_modified_time":"2020-05-18T17:24:33+00:00","og_image":[{"width":250,"height":250,"url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png","type":"image\/png"}],"author":"Jose Aguilar","twitter_card":"summary_large_image","twitter_creator":"@JoseAguilarBlog","twitter_site":"@JoseAguilarBlog","twitter_misc":{"Escrito por":"Jose Aguilar","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/","url":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/","name":"Bot\u00f3n para mostrar contrase\u00f1a en un campo - Jose Aguilar Blog","isPartOf":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#primaryimage"},"image":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#primaryimage"},"thumbnailUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png","datePublished":"2020-04-02T16:31:42+00:00","dateModified":"2020-05-18T17:24:33+00:00","author":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11"},"description":"Tutorial y c\u00f3digo de ejemplo que permite agrear un bot\u00f3n para mostrar u ocultar la contrase\u00f1a en un campo de texto de forma sencilla utilizando JavaScript.","breadcrumb":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#primaryimage","url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png","contentUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2020\/04\/mostrar-contrasena.png","width":250,"height":250,"caption":"Mostrar y ocultar contrase\u00f1a con JavaScript"},{"@type":"BreadcrumbList","@id":"https:\/\/www.jose-aguilar.com\/blog\/boton-para-mostrar-contrasena-en-un-campo\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.jose-aguilar.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Bot\u00f3n para mostrar contrase\u00f1a en un campo"}]},{"@type":"WebSite","@id":"https:\/\/www.jose-aguilar.com\/blog\/#website","url":"https:\/\/www.jose-aguilar.com\/blog\/","name":"Jose Aguilar Blog","description":"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11","name":"Jose Aguilar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","caption":"Jose Aguilar"},"description":"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.","sameAs":["https:\/\/plus.google.com\/114357189801512615537"],"url":"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/7557","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/comments?post=7557"}],"version-history":[{"count":0,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/7557\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media\/7560"}],"wp:attachment":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media?parent=7557"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/categories?post=7557"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/tags?post=7557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}