.setAttribute ("disabled", false); cambia el atributo editable a false
Quiero tener cuadros de texto relacionados con los botones de radio. Por lo tanto, cada botón de opción debe habilitar su cuadro de texto y deshabilitar los demás. Sin embargo, cuando establezco el atributo deshabilitado de textbox en verdadero, también cambia el atributo editable. Intenté establecer el atributo editable true de nuevo, pero no funcionó.
Esto fue lo que intenté:
Función JS:
function enable(id)
{
var eleman = document.getElementById(id);
eleman.setAttribute("disabled", false);
eleman.setAttribute("editable", true);
}
Elementos XUL:
<radio id="pno" label="123" onclick="enable('ad')" />
<textbox id="ad" editable="true" disabled="true" flex="1" emptytext="asd" onkeypress="asd(event)" tooltiptext="" >
6 answers
Un elemento disabled
es, (auto-explicativo) deshabilitado y por lo tanto lógicamente no editable. asÃ:
Establece el atributo disabled [...] también cambia el atributo editable
Se pretende un comportamiento bien definido.
El verdadero problema aquà parece ser que estás tratando de establecer disabled
a false
a través de setAttribute()
que no hace lo que esperas. un elemento se deshabilita si el atributo disabled
se establece, independientemente de su valor (asÃ, disabled="true"
, disabled="disabled"
y disabled="false"
todos hacen el lo mismo: el elemento se deshabilita). en su lugar, debe eliminar el atributo completo:
element.removeAttribute("disabled");
O establezca esa propiedad directamente:
element.disabled = false;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-09 13:42:00
Simplemente establezca la propiedad directamente:.
eleman.disabled = false;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-09-23 09:08:43
Intenta hacer esto en su lugar:
function enable(id)
{
var eleman = document.getElementById(id);
eleman.removeAttribute("disabled");
}
Para habilitar un elemento debe eliminar el atributo disabled. Configurarlo a false todavÃa significa que está deshabilitado.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-09-23 09:06:06
El valor de los atributos deshabilitados no se considera actally.. por lo general, si usted ha notado que el atributo se establece como disabled="disabled" el "disabled" aquà no es necesario persay.. por lo tanto, lo mejor que puede hacer es eliminar el atributo.
element.removeAttribute("disabled");
También podrÃas hacer
element.disabled=false;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-09-23 09:08:20
Usando el método establecer y eliminar atributo
function radioButton(o) {
var text = document.querySelector("textarea");
if (o.value == "on") {
text.removeAttribute("disabled", "");
text.setAttribute("enabled", "");
} else {
text.removeAttribute("enabled", "");
text.setAttribute("disabled", "");
}
}
<input type="radio" name="radioButton" value="on" onclick = "radioButton(this)" />Enable
<input type="radio" name="radioButton" value="off" onclick = "radioButton(this)" />Disabled<hr/>
<textarea disabled ></textarea>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-20 07:53:11
Simplemente reemplace 'myselect' con su id
Para desactivar - >
document.getElementById("mySelect").disabled = true;
Para habilitar - >
document.getElementById("mySelect").disabled = false;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-17 10:21:49