Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Select "ломает" форму (https://javascript.ru/forum/jquery/44228-select-lomaet-formu.html)

Veterinar 11.01.2014 22:10

Select "ломает" форму
 
Есть некая формочка, а в ней список с select-ом. В этот селект загружается AJAX список данных. Но у данных есть такие названия, что они не влазят в отведенную ширину формы и список нагло торчит из-за края формы.
Хотелось бы после загрузки данных в этот "селект" расширить всё окно с этой формочкой. Если считать по количеству символов в строке, то всё равно неясно сколько их должно влезть в этот самый селект. А обрезать строки с названиями неохота - будет совсем, простите, хреновина.

Подскажите, пожалуйста! - Как можно узнать ширину элемента select после того, как в него чо-нить напихается аяксом?

Faab 11.01.2014 22:59

Ну а почему изначально не дать селекту нужную ширину? Да, порой это "ломает" ваши первоначальные планы дизайна, но и раз уж вы отказались ограничивать длину данных, то смиритесь с этим фактом, что бы подстраивать дизайн под ваш селект.

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

Veterinar 11.01.2014 23:05

Да, можно в span всунуть, но это, вы правы, не решение. Увы.
Я подумал может у select есть свойство длины или в JQ какие-то примочки. Только в тырнете не нашёл...

Faab 11.01.2014 23:29

Ну вы узнаете длину, и что вам это даст?

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery Select</title>
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script>
  $(function() {
    alert( $('#e_select').css('width') );
  });
  </script>
</head>
<body>
<select id="e_select" style="color: blue;">
<option>123145</option>
<option>12314567890</option>
<option>12314567890123145</option>
</select>
</body>
</html>

Veterinar 12.01.2014 00:18

Спасибо!

Если узнаю длину, то можно увеличить ширину окошка с формочкой, чтобы оттуда не торчал оголённый конец Селекта :-)


Часовой пояс GMT +3, время: 09:27.