Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 启用禁用的元素_Javascript_Html - Fatal编程技术网

Javascript 启用禁用的元素

Javascript 启用禁用的元素,javascript,html,Javascript,Html,我试图在单击p元素时启用禁用的元素。下面的代码将把文本框中的值存储到另一个文本框中,我已将该文本框附加到div中。稍后该文本框将被禁用。鼠标悬停在div上时,将显示编辑和删除。单击编辑后,必须再次启用div中的文本框 <div id="ta"></div> <input type="text" id="tb"><br> <button onclick="add()">Submit</button><br>

我试图在单击p元素时启用禁用的元素。下面的代码将把文本框中的值存储到另一个文本框中,我已将该文本框附加到div中。稍后该文本框将被禁用。鼠标悬停在div上时,将显示编辑和删除。单击编辑后,必须再次启用div中的文本框

<div id="ta"></div>
<input type="text" id="tb"><br>
<button onclick="add()">Submit</button><br>    

<script type="text/javascript">

var ta="";
    function add() {
        var newDiv="",newTa="",newP="",newImg="";

        ta=document.getElementById('ta');
    newDiv = document.createElement("div");

    ta.appendChild(newDiv);

    newTa = document.createElement("input");
    newTa.type="text"
        newTa.disabled="true";
        newTa.value=document.getElementById("tb").value;

        newDiv.onmousedown=function(){

        newP.style.visibility="visible";
    newImg.style.visibility="visible";  

        };


        newP=document.createElement("p");

        newP.innerHTML="Edit";
        newP.style.visibility="hidden";
        newP.style.display="inline";
        newP.style.padding="5px";
        newP.onclick=function()
        {
           newTa.disabled="false";//this is not working

        }


提交
var ta=“”; 函数add(){ var newDiv=“”,newTa=“”,newP=“”,newImg=“”; ta=document.getElementById('ta'); newDiv=document.createElement(“div”); 电讯局长(新分区); newTa=document.createElement(“输入”); newTa.type=“文本” newTa.disabled=“true”; newTa.value=document.getElementById(“tb”).value; newDiv.onmousedown=函数(){ newP.style.visibility=“可见”; newImg.style.visibility=“可见”; }; newP=document.createElement(“p”); newP.innerHTML=“编辑”; newP.style.visibility=“隐藏”; newP.style.display=“inline”; newP.style.padding=“5px”; newP.onclick=function() { newTa.disabled=“false”//这不起作用 }

为什么不起作用?还有其他方法吗?

原因可能是您提供了字符串形式的“false”:

[…]非空字符串是真实的。因此,将“false”指定给禁用的属性与将其设置为true具有相同的效果

请尝试使用正确的布尔值

newTa.disabled = false;
这两个应该没有“”

否则你可以这样做:

var x = document.getElementById("mySelect").disabled;

是否需要引用“false”?请提供一个工作示例Badhorsie的答案是正确的。此类问题通常是由于混淆了HTML属性和DOM节点属性之间的区别而导致的,因此这里有一个很好的解读:OMG我太傻了……删除引号现在就可以了……谢谢
newTa.disabled=true
newTa.disabled=false
var x = document.getElementById("mySelect").disabled;