无法禁用动态div中的元素

时间:2014-08-24 12:30:11

标签: javascript jquery jquery-selectors

创建动态div并尝试使节点不可编辑:

var ni = document.getElementById('myDiv'); 

var numi = document.myForm.inputboxlength; 

var num = parseInt(numi.value) +1; 
//alert(num); 
numi.value = num; 

var newdiv = document.createElement('div'); 

var divIdName = 'my'+num+'Div'; 

newdiv.setAttribute('id',divIdName); 
newdiv.className='divclass';


newdiv.innerHTML = "<input type=\"textarea\" style=\"width:350px; height:44px;\" name=\"txtArea"+num +"\" /> <br> <input type=\"button\" onclick=\"removeInputBox(\'"+divIdName+"\')\" value='Remove'/> <input type=\"button\" onclick=\"done(\'"+divIdName+"\')\" value='Done'/> " +divIdName;

ni.appendChild(newdiv);

这是按下按钮时调用的函数:

function done(divNum) { 


$(".divclass:not(:last-child) :input").attr("disabled",true);


} 

但内容仍然可以编辑。几乎所有内容都已完成。

更新

小提琴:http://jsfiddle.net/4fr79153/3/

1 个答案:

答案 0 :(得分:1)

这可能是一个答案:http://jsfiddle.net/4fr79153/4/

我改变了你的选择器:

$("#"+divNum).children('input[type="textarea"]')

而不是

$(".divclass:not(:last-child) :input")