Доброго времени суток. В чём может быть ошибка если в форме для комментариев пишешь в столбик например: text text То после нажатия добавить (submit) выдаёт всё в строчку: text text И если много текста то он вылазит за рамки формы вот вьюшка Код (Text): <?php endif;?> <!-- end bottom comment--> <?php if(!Yii::$app->user->isGuest):?> <div class="leave-comment"><!--leave comment--> <h4>Оставьте ответ</h4> <?php if(Yii::$app->session->getFlash('comment')):?> <div class="alert alert-success" role="alert"> <?= Yii::$app->session->getFlash('comment'); ?> </div> <?php endif;?> <?php $form = ActiveForm::begin([ 'action'=>['site/comment', 'id'=>$article->id], 'options'=>['class'=>'form-horizontal contact-form', 'role'=>'form']])?> <div class="form-group"> <div class="col-md-12"> <?= $form->field($commentForm, 'comment')->textarea (['class'=>'form-control', 'placeholder'=>'Введите текст.'])->label(false)?> </div> </div> <button type="submit" class="btn send-btn">Добавить</button> <?php ActiveForm::end();?> </div><!--end leave comment--> <?php endif;?>
Это же основы самые HTML, что переводы строк по умолчанию считаются пробелом, а так же несколько пробельных символов браузер считает за один. Выход - nl2br, т.е. переводы строк перевести в br. Или же стилями можно заставить переносить по строкам.
Так я и пытался использовать nl2br всюду его вставлял, или подзабыл html или не там применяю вот полностью вьюшка. Код (Text): <?php use yii\bootstrap\Html; use yii\helpers\Url; use yii\widgets\ActiveForm; ?> <?php if(!empty($comments)):?> <?php foreach($comments as $comment):?> <div class="bottom-comment"><!--bottom comment--> <div class="user-image"> <div class="comment-text"> <a href="<?= Url::to(['/user/profile/show', 'id' => $comment->user->id]); ?>" style="display: block; max-width: 110%; padding: 5px 13px 0px;"> <img width="150" height="140" class="img-circle" src="<?= $comment->user->image; ?>" title="<?php echo $comment->user->username; ?>"style="padding: 13px;"/> <ol> <?= $comment->user->username;?><a style="padding: 0px 0px 0px;"/></ol></a> <p><ol><u><i><?= $comment->user->profile->signature; ?></i></u></p> </div> <p class="para"> <div><?= $comment->text; ?></div> </p> </div> <p class="comment-date" > <?= $comment->getDate();?> </p> </div> <?php endforeach;?> <?php endif;?> <!-- end bottom comment--> <?php if(!Yii::$app->user->isGuest):?> <div class="leave-comment"><!--leave comment--> <h4>Оставьте ответ</h4> <?php if(Yii::$app->session->getFlash('comment')):?> <div class="alert alert-success" role="alert"> <?= Yii::$app->session->getFlash('comment'); ?> </div> <?php endif;?> <?php $form = ActiveForm::begin([ 'action'=>['site/comment', 'id'=>$article->id], 'options'=>['class'=>'form-horizontal contact-form', 'role'=>'form', ]])?> <div class="form-group"> <div class="col-md-12"> <?= $form->field($commentForm, 'comment')->textarea (['class'=>'form-control', 'placeholder'=> 'Введите текст.'])->label(false)?> </div> </div> <button type="submit" class="btn send-btn">Добавить</button> <?php ActiveForm::end();?> </div><!--end leave comment--> <?php endif;?> можешь показать на примере.?
У меня работает перенос строки - http://joxi.ru/D2PGJDBip378pm правда не успел проверить вылазит ли текст за форму ,-пока просто в rules прописал ограничение символов.
Я вот так сделал HTML: <form action="" method="post" enctype="multipart/form-data"> <textarea name="text" style="display:none;" class="copy-write-comment" rows="" cols=""></textarea> <br> <p style=" padding: 10px; background: white; width: 50%; border: 1px solid; height: 150px;" contenteditable="true" class="write-comment"></p> </div> <input type="submit" name="Submit" value="Submit" class="submit_btn"> </form> </form> <script> var formComment = document.querySelector('.write-comment'); var formCommentCopy = document.querySelector('.copy-write-comment'); var descriptionComment = document.createElement('div'); formComment.appendChild(descriptionComment); formComment.addEventListener('input', function(){ formCommentCopy.innerHTML = formComment.innerHTML }); </script>
не плохо насчёт формы на только JS и CSS лучше подключать в assets/AppAsset.php,- yii2 современная штукенция и у неё мощьные связи я делаю так. Код (Text): <?php namespace app\assets; use yii\web\AssetBundle; class AppAsset extends AssetBundle { public $basePath = '@webroot'; public $baseUrl = '@web'; public $css = [ "public/css/ui.totop.css", "public/css/bootstrap.min.css", "public/css/font-awesome.min.css", "public/css/animate.min.css", "public/css/owl.carousel.css", "public/css/owl.theme.css", "public/css/owl.transitions.css", "public/css/style.css", "public/css/responsive.css", ]; public $js = [ //"public/js/jquery-1.11.3.min.js", "public/js/menu.js", "public/js/scripts.js", "public/js/owl.carousel.min.js", "public/js/bootstrap.min.js", "public/js/jquery.stickit.min.js", "public/js/aleen.js", // "public/js/kn/easing.js,", "public/js/kn/jquery.ui.totop.js", "public/js/kn/jquery.ui.totop.min.js", // "public/js/kn/jquery-1.7.2.min.js" ]; public $depends = [ 'yii\web\YiiAsset', 'yii\bootstrap\BootstrapAsset', ]; }