#html #ruby-on-rails #ruby
#HTML #ruby-on-rails #ruby
Вопрос:
Как я мог бы получить длину HTML-строки на стороне сервера после ее отображения.
Например, Aamp;amp;B<a href="http://www.abc.org">C</a>
имеет длину 4 после того, как он был отрисован.
На стороне клиента это было бы довольно просто, используя, например, jQuery. Просто упакуйте его в div и вызовите $("div").text().length
.
Но что я могу использовать на стороне сервера, используя Ruby / Rails?
Обновить
Я думаю, Майк прав, что для этого нет прямого решения. Но есть ли библиотека, которая позволяет мне легко преобразовывать специальные объекты, такие как amp;amp;
, в обычное представление ( amp;
)?
Обновление Обновления 😉
Я думаю http://htmlentities.rubyforge.org / сделает свое дело.
Комментарии:
1. обычно вы можете использовать
string.size
для возврата его длины. Но здесь вам не все ясно. Итак, добавьте еще немного информации2. Вы хотите получить ту же длину, что и 4, из длины на стороне сервера?
3. Я хотел бы получить «размер» строки в том виде, в каком она представлена пользователю. Пользователь в своем браузере действительно видит
Aamp;BC
в приведенном выше примере, поэтому длина == 4 этой отображаемой HTML-строки.
Ответ №1:
У меня такое чувство, что это не встроено, поскольку Rails строго возвращает HTML для браузера для анализа и рендеринга. Rails понятия не имеет, как HTML будет отображаться пользователю.