How to disable a text area?

2020-07-08 08:08发布

How to disable a textarea which is dynamically added to the HTML?

HTML:

<div class="ss_datesel_inp_cont">
    <div class="ss_datesel_inp_right_corner">
    </div>
    <input autocomplete="off">
</div>

This is what I tried:

   $('.ss_datesel_inp_cont:textarea').prop("disabled", true);
   $('.ss_datesel_inp_cont:input').prop("disabled", true);

5条回答
ら.Afraid
2楼-- · 2020-07-08 08:18

Have you tried,

$('.ss_datesel_inp_cont:textarea').attr("disabled", true);

prop only works for jQuery 1.6 or later.

查看更多
太酷不给撩
3楼-- · 2020-07-08 08:20

I don't see a textarea element in the code you posted? Based on the markup you have, you would disable the input by:

$('.ss_datesel_inp_cont input').prop('disabled', true);

The reason your code isn't working is simply because the selector is wrong. The input is a descendant of .ss_datesel_inp_cont and therefore you need to indicate that with a space between .ss_datesel_inp_cont and input. The input is also a direct child, so alternatively you could use the direct child token > as in $('.ss_datesel_inp_cont > input').

查看更多
Juvenile、少年°
4楼-- · 2020-07-08 08:25

You can do this:

$('.ss_datesel_inp_cont input').attr('disabled','disabled');

Your input is within the div, so you can select it in the same way as you select with css, by a space.

It is a child of the div, so you could also do this:

.ss_datesel_inp_cont > input

Example: http://jsfiddle.net/UpHsA/

查看更多
放我归山
5楼-- · 2020-07-08 08:29

I would try:

$('.ss_datesel_inp_cont:textarea').prop("disabled", "disabled");

or

$('.ss_datesel_inp_cont textarea').prop("disabled", "disabled");
查看更多
迷人小祖宗
6楼-- · 2020-07-08 08:32

To change the disabled property you should use the .prop() function.

$("textarea").prop('disabled', true);
$("textarea").prop('disabled', false);

Note: For jQuery 1.6+

查看更多
登录 后发表回答