У меня проблема здесь. Прямо сейчас, когда я нажимаю 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]*?\?>| /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
, комментарий показывает встроенный
тестовый тест
без
.