Почему, когда вы публикуете многострочный комментарий, он не выглядит как несколько строк - PullRequest
0 голосов
/ 04 мая 2020

У меня проблема здесь. Прямо сейчас, когда я нажимаю Enter, он отправляет комментарий. И когда я нажимаю Shift + Enter, это создает новую строку. Как я могу сделать так, чтобы это было наоборот? Если нажать Enter, появится новая строка, а Shift + Enter отправит комментарий?

PostComment = function($container) {
    $('#comment-box-' + $container).keypress(function(e) {
        if (e.which == 13) {
            if (e.shiftKey === false) {
                $replace_tags = function(input, allowed) {
                    allowed = (((allowed || '') + '').toLowerCase().match(/<[a-z][a-z0-9]*>/g) || []).join('')
                    var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>/gi
                    var commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>|&nbsp;/gi
                    return input.replace(commentsAndPhpTags, '').replace(tags, function($0, $1) {
                        return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : ''
                    })
                };

                $text = $('#comment-box-' + $container).html();
                $text = $replace_tags($text, '<br>').replace(/\<br\\?>/g, "\n");
                $('#comment-container-' + $container).append("<textarea name='comment' class='hidden'>" + $text + "</textarea>");
                $('#comment-container-' + $container).submit();
            }
        }
    });

Я установил e.shiftKey === true, что сработало. Но когда я отправляю комментарий

test 
test

, комментарий показывает встроенный

тестовый тест

без
.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...