如何禁用动态添加到HTML的textarea?
HTML:
<div class="ss_datesel_inp_cont">
<div class="ss_datesel_inp_right_corner">
</div>
<input autocomplete="off">
</div>
这就是我的尝试:
$('.ss_datesel_inp_cont:textarea').prop("disabled", true);
$('.ss_datesel_inp_cont:input').prop("disabled", true);
答案 0 :(得分:19)
我在你发布的代码中没有看到textarea元素?根据您拥有的标记,您将通过以下方式禁用输入:
$('.ss_datesel_inp_cont input').prop('disabled', true);
您的代码无法正常工作的原因仅仅是因为选择器错误。输入是.ss_datesel_inp_cont
的后代,因此您需要在.ss_datesel_inp_cont
和input
之间指明一个空格。输入也是直接子项,因此您也可以使用>
中的直接子令牌$('.ss_datesel_inp_cont > input')
。
答案 1 :(得分:4)
要更改disabled属性,您应该使用.prop()函数。
$("textarea").prop('disabled', true);
$("textarea").prop('disabled', false);
注意:对于jQuery 1.6 +
答案 2 :(得分:0)
你试过吗,
$('.ss_datesel_inp_cont:textarea').attr("disabled", true);
prop
仅适用于jQuery 1.6或更高版本。
答案 3 :(得分:0)
我会尝试:
$('.ss_datesel_inp_cont:textarea').prop("disabled", "disabled");
或
$('.ss_datesel_inp_cont textarea').prop("disabled", "disabled");
答案 4 :(得分:0)
你可以这样做:
$('.ss_datesel_inp_cont input').attr('disabled','disabled');
您的input
位于div
范围内,因此您可以使用与使用css选择的方式相同的方式选择它。
这是div
的孩子,所以你也可以这样做:
.ss_datesel_inp_cont > input