سلام و ودرود خدمت همه دوستان و عزیزان ، می خواستم بدونم چطور میشه اینتر هایی(break-line) که کاربران توی textarea به هنگام ثبت کامنت ها اعمال می کنن رو دریافت کنم ؟
الآن به صورت پیشفرض به این شکل هستش .
مثال:
این متن رو توی تکست اریا تایپ کردم الآن در خط اول هستم. الآن در خط دوم هستم.
همونطور که در مثال بالا هم می بینید ، همه رو به دنبال هم به بک اند ارسال میکنه و <br> ها رو انجام نمیده و نمیفرسته .
بله خدارو شکر ،
من دقیقا به دلیل همون trim کردن فاصله انتهای هر خط از متنی که درون textarea تایپ میکردم حذف میشد و توی بازخوانی و publishing استایل سایت نمی تونست فاصله های break-line ها رو متوجه بشه .
با توجه به اینکه راکت از نظر seo رتبه خوبی داره ، در ادامه روند کاری رو که انجام دادم میگم شاید به درد کسی بخوره و گره ای از کار کسی باز بکنه ...
فرم ورودی :
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>form</title>
</head>
<body>
<form action="/controller/">
<textarea name="INPUT_NAME" ></textarea>
<input type="submit" name="INPUT_NAME" value="send">
</form>
</body>
</html>
هر محتوایی که کاربر می خواد رو تایپ می کنه و ارسال میکنه ، بعد از اعمال ******** های لازم روی ورودی های کاربر توی controller و ثبت موفقیت آمیز محتوا توی پایگاه داده(DataBase) ، زمانیکه می خوایم محتوا رو با همین فاصله ها و اینتر ها (<br/>) بخونیم کافیه استایل زیر رو به ظرفی که میخوایم محتوا رو توی اون چاپ کنیم بدیم :
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>form</title>
</head>
<body>
<p>
<span style="white-space:pre-line;">
ظرفی که قرار محتوای ما بعد از خوانده شدن از پایگاه داده در اینجا چاپ بشه
</span>
</p>
</body>
</html>
دقیقا میشه گفت مثل همین textarea که توی راکت هستش.
چطوری میشه که با زدن اینتر به خط بعدی میره و توی نمایش هم دقیقا همین <br> ها لحاظ میشه ؟؟
یک احتمالی که هست اینه که شما برای ذخیره در دیتابیس متن رو تریم میکنید!!!
اینجوری تگ هایی که توی متن هست از بین میره
کد بک اند و فرانت اند رو هم بزارید
@intellect.circle
بله دقیقا فرمایش شما درسته ، من چون متن رو تریم میکردم به هنگام بازخوانی متن و publish کردنش اون فاصله لازم برای رفتن به خط بعدی وجود نداشت
الان مشکلتون برطرف شد؟!
trim تا جایی که میدونم فقط فاصله ها رو از ابتدا و انتهای متن حذف میکرد و ارتباطی با فاصله های وسط متن نداشت... 🙄
بله خدارو شکر ،
من دقیقا به دلیل همون trim کردن فاصله انتهای هر خط از متنی که درون textarea تایپ میکردم حذف میشد و توی بازخوانی و publishing استایل سایت نمی تونست فاصله های break-line ها رو متوجه بشه .
با توجه به اینکه راکت از نظر seo رتبه خوبی داره ، در ادامه روند کاری رو که انجام دادم میگم شاید به درد کسی بخوره و گره ای از کار کسی باز بکنه ...
فرم ورودی :
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>form</title>
</head>
<body>
<form action="/controller/">
<textarea name="INPUT_NAME" ></textarea>
<input type="submit" name="INPUT_NAME" value="send">
</form>
</body>
</html>
هر محتوایی که کاربر می خواد رو تایپ می کنه و ارسال میکنه ، بعد از اعمال ******** های لازم روی ورودی های کاربر توی controller و ثبت موفقیت آمیز محتوا توی پایگاه داده(DataBase) ، زمانیکه می خوایم محتوا رو با همین فاصله ها و اینتر ها (<br/>) بخونیم کافیه استایل زیر رو به ظرفی که میخوایم محتوا رو توی اون چاپ کنیم بدیم :
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>form</title>
</head>
<body>
<p>
<span style="white-space:pre-line;">
ظرفی که قرار محتوای ما بعد از خوانده شدن از پایگاه داده در اینجا چاپ بشه
</span>
</p>
</body>
</html>
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟