سلام دوستان..
من برای مالتی سلکت از کتابخونه select2 استفاده میکنم و آپشن تگ رو هم فعال کردم.
tags: true,
بعدش اومدم آپشن زیر رو هم فعال کردم:
maximumSelectionLength: 5,
تا اینجا همه چی اوکیه و میتونم حداکثر 5 تا تگ وارد کنم..
منتها میخوام علاوه بر اینتر با زدن اسپیس یا کاما هم کلمه نوشته شده تبدیل به تگ بشه..
این کد رو که اضافه میکنم:
tokenSeparators: [',', ' '],
حالا وقتی این اضافه شد یه مشکل بوجود میاد اونم اینه که وقتی تعداد تگ ها 5 تا شد و تگ جدید وارد کنم اگر اینتر رو بزنم که درست کار میکنه و از ایجاد تگ جلو گیری میشه ولی وقتی اسپیس و کاما رو میزنم تگ جدید هم اضافه میشه در صورتی که گفتم حداکثر 5 تا باشه..
فکر می کنم حق با شماست، امتحان کردم، همین ایراد رو داره.
اینجا هم گزارش شده پیش از این:
https://github.com/select2/select2/issues/4500
با ساخت آپشن سفارشی برای تگ یجورایی هندلش کردم..
Customizing tag creation
createTag: function (params) {
var term = $.trim(params.term);
if (/[^u0600-\u06FF\a-z0-9\-\/]/.test( term ) ) {
return null;
}
if (term.trim().length < 3) {
return null;
}
return {
id: term,
text: term,
newTag: true // add additional parameters
}
},
صرفا میخواستم برای اضافه کردن برچسب محصول از کاراکترای نا مناسب و اسپیس استفاده نشه..
البته یه چیز دیگه هم که تو کد بالا هست اینه که چون گفته بودم حداقل سه حرف وارد کنه برای تگ، توی کد بالا گفتم که اسپیس رو جزو اون سه حرف حساب نکنه که مثلا طرف نیاد دوتا اسپیس بزنه و یه حرف بعد تگ ساخته بشه..
tokenSeparators رو کلا برش داشتم بجاش با کد بالا این مسئله رو حل کردم..
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟