Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Проблема с переносом строки


Автор: ForestRain 2.4.2013, 12:11
Здравствуйте, уважаемые форумчане! Подскажите, пожалуйста, почему не срабатывает "\n" и '\n' в коде

Код
<button type="button" {% IF GOODS_MOD_REST_VALUE>0 %} id="m1" {% ELSE %} id="m2" {% ENDIF %} onclick='if($(this).text() == "&nbsp;&nbsp;Уведомить меня о поступлении") 
{ document.location = "/feedback/?form[feedback_message]=Прошу вас уведомить меня о поступлении товара " + "&laquo;" + $.trim($("h1:first").text()) + "&raquo;." + "\n" 
+ $.trim($(".goodsDataMainModificationArtNumber").text()) + "."; } else { $(".goodsDataForm").submit(); } return false;' title="{% IF GOODS_MOD_REST_VALUE>0 %}Положить 
в корзину{% ELSE %}Попросить оповестить при поступлении{% ENDIF %}" class="btn btn-success" ><i class="icon-ok icon-white"></i>&nbsp;&nbsp;{% IF 
GOODS_MOD_REST_VALUE>0 %}Положить в корзину{% ELSE %}Уведомить меня о поступлении{% ENDIF %}</button>


а также, как всё-таки перенести вывод $(".goodsDataMainModificationArtNumber").text() на сл. строку?

Автор: Aliance 2.4.2013, 14:10
Как я понимаю, идёт редирект на /feedback/?form[feedback_message]=text, и вот сам text должен содержать перевод строки?
А что получается в итоге? Обрабатывается эта ситуация как-то на сервере?

Автор: bars80080 2.4.2013, 14:14
покажите не серверный исходник, а то что в реальности находится на странице

Автор: ForestRain 2.4.2013, 15:26
Вот страница товара: user posted image

Вот куда происходит переадресация при нажатии на кнопку «Уведомить о поступлении»: user posted image

Вопрос собсно в том, как организовать перенос артикула на сл. строчку...

Автор: bars80080 2.4.2013, 16:55
виноват, надо сузить 

покажите не серверный исходник, а то что в реальности находится на странице в виде кода

делается это просто: открыли вот эту свою страницу в браузере, затем кликаете правой кнопкой мыши и выбираете "просмотр кода страницы". там вы увидите то, что отдаёт сервер

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

Автор: ForestRain 13.4.2013, 22:45
Код

<div class="input-box">
    <textarea id="feedback_message" name="form[6520afceec239938df9394a74c0d51bd]" class="required">
        Прошу вас уведомить меня о поступлении товара «Футбольные бутсы Adidas adizero F50 XTRX SG Synthetic».Артикул: Q33859.
    </textarea>
</div>

Автор: bars80080 15.4.2013, 09:58
видел я ваш последний пост, но было лень отвечать по вполне ясной причине, а именно:

код из последнего поста никак не относится к первому и никак не может быть полезен для решения возникшей проблемы

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

упрощать ситуацию до элементарщины

что включает в себя вывод кода в отдельные функции и проверка его переменных на входе и результата на выходе.

к примеру:
Код

<html>
    <head>
        <script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
        <script>
            function qw() {
                var smth = $('#first').val() + "\n" + $('#second').val();
                $('#wer').html(smth);
            }
        </script>
    </head>
    <body>
        <input id="first" /><br />
        <input id="second" /><br />
        <textarea id="wer"></textarea><br />
        <input type="button" value="ins" onclick="qw();" />
    </body>
</html>

вопрос: работает ли это у вас в браузере? если да, значит проблема в коде

1) вынесите всю вашу балабасню, что напихана в тэг <button> в отдельную функцию
2) проверяйте на каждом этапе где какие значения с помощью alert() или вставкой в поле


и самое главное, что надо сделать изначально:

проверьте стили своего текстового поля. не в файле .css, а прямо в браузере. в хроме и файерфоксе это делается двумя кликами через "просмотр кода элемента"

если проблема не решится, то выдайте сюда текст выделенной функции и список стилей из браузера для элемента

Автор: ForestRain 16.4.2013, 00:01
Уважаемый bars80080, вот ссылка на ту страницу, о которой идёт речь: http://ilovefootball.ru/goods/futbolnye-butsy-adidas-adizero-f50-xtrx-sg-synthetic

При нажатии на зелёную кнопку соответственно происходит переход сюда: http://ilovefootball.ru/feedback/?form[feedback_message]=%D0%9F%D1%80%D0%BE%D1%88%D1%83%20%D0%B2%D0%B0%D1%81%20%D1%83%D0%B2%D0%B5%D0%B4%D0%BE%D0%BC%D0%B8%D1%82%D1%8C%20%D0%BC%D0%B5%D0%BD%D1%8F%20%D0%BE%20%D0%BF%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%BB%D0%B5%D0%BD%D0%B8%D0%B8%20%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D0%B0%20%C2%AB%D0%A4%D1%83%D1%82%D0%B1%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5%20%D0%B1%D1%83%D1%82%D1%81%D1%8B%20Adidas%20adizero%20F50%20XTRX%20SG%20Synthetic%C2%BB.%D0%90%D1%80%D1%82%D0%B8%D0%BA%D1%83%D0%BB:%20Q33859.

Веорятно потому, что текст идёт в урл, пропадает перенос на другую строку?

По вашей просьбе хотел скопировать список стилей, но не знаю, какой именно элемент вас интересует. Имхо вряд ли дело в стилях, но теперь имея под рукой ссылки, вы и сами можете заглянуть как в код, так и стили. А что касается выделенных функций, что я тут буду долго разбираться... Это же раздел для новичков, мои познания в жс близки к нулю.

Автор: bars80080 16.4.2013, 10:17
Код

<html>
    <head>
        <script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
        <script>
            function qw() {
                var txt = "Прошу вас уведомить меня о поступлении товара  " + "«" + $.trim($("#first").val()) + "»." + "\n" + $.trim($("#second").val()) + ".";
                //txt = escape(txt);
                document.location = "?param=" + txt;
            }
            $(document).ready(function() {
                var ar = document.location.href.split('param=');
                var s = unescape(ar[1]);alert(s);
                $('#wer').html(s);
            });
        </script>
    </head>
    <body>
        <input id="first" /><br />
        <input id="second" /><br />
        <textarea id="wer"></textarea><br />
        <input type="button" value="ins" onclick="qw();" />
    </body>
</html>

смотрим код, комментируем и раскомментируем строчку: 
                //txt = escape(txt);
смотрим как это влияет

и всё-таки делаем то, что изначально советовал - выносим балабасню с кодом из тэга button в отдельную функцию, и там уже добавляем нужные функции. сколько и каких - зависит от уже применённых функций обработки. может после escape текст изрядно исковеркается. тогда на второй странице тоже придётся что-нибудь добавлять (unescape или decodeURIComponent)
вместо escape, я бы лучше использовал encodeURIComponent, но на локали она не пошла



ну и по поводу реализации хочется сказать, что я бы руки выдернул за такие методы. URL - это адрес! ну что за манера пихать в него всякую хрень? во прикольно будет, если поисковик пофиксит такую страницу

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)