2014-08-27 4 views
0

Я использую Bootstrap, чтобы отключить содержимое TextArea как таковой:Предел TextArea на основе содержания

<td> 
    <textarea class="form-control disabled" id="message"></textarea> 
</td> 

, который работает отлично, за исключением того, что мне нужно, чтобы контролировать высоту, а также , основанный на содержимом, передаваемом в элемент управления.

Есть ли какие-либо трюки HTML 5 или трюки CSS, которые я могу использовать для динамического изменения высоты элемента управления на основе текста? Или это может быть достигнуто только с помощью JScript

+0

Посмотрите на это: http://stackoverflow.com/questions/11698956/textarea-set-height-based-on-content-js-or-jquery –

+0

Дэвид, это показывает изменение размера TextArea на входе, однако текстовая область заполняется на загрузку страницы, используя Ajax, поэтому пользовательский ввод не вводится. – CSharpNewBee

+1

@ChrisSpittles, я использовал гибкую ссылку из вашей ссылки. Cheers – CSharpNewBee

ответ

1

Попробуйте это:

DEMO

HTML:

<textarea id="ta" class="form-control disabled" id="message"></textarea> 

CSS:

textarea { 

    resize:none; 
} 

SCRIPT:

$("#ta").keyup(function (e) { 
    autoheight(this); 
}); 

function autoheight(a) { 
    if (!$(a).prop('scrollTop')) { 
     do { 
      var b = $(a).prop('scrollHeight'); 
      var h = $(a).height(); 
      $(a).height(h - 5); 
     } 
     while (b && (b != $(a).prop('scrollHeight'))); 
    }; 
    $(a).height($(a).prop('scrollHeight') + 20); 
} 

autoheight($("#ta")); 
0

Добавить следующий CSS:

textarea.form-control{ 
    position:absolute; 
    height: auto; 
} 
+0

попробуйте улучшить свой ответ, предоставив подробную информацию о том, что вы сделали и почему вы это сделали. С уважением –

Смежные вопросы