تاریخ عضویت : 1400/02/20
ارسالها : 1 نوشته
|
لطفا درخصوص استفاده از DatePicker شمسی در ماژول اکشن فرم راهنمایی بفرمایید. هر دو DatePicker موجود در قسمت طراحی فرم تاریخ را بصورت میلادی بر میگرداند. این در حالیست که DatePicker خود DNN (در قسمت پروفایل کاربران) تاریخ را شمسی نمایش می دهد. زبان سایت روی فارسی تنظیم است و تاریخ هایی که در فرم ها نمایش داده می شود شمسی است اما تاریخ DatePickerها میلادی است.
|
|
|
|
|
|
تاریخ عضویت : 1394/01/06
ارسالها : 729 نوشته
( تشکرها: 19 بار )
( 222 تشکر دریافتی در 194 ارسال )
|
سلام و درود . ماژول های ثالث به صورت پیش فرض بومی نیستند و برای داشتن تقویم یا دیتاپیکر یا تاریخ شمسی نیاز است بومی سازی گردد . اگر این محصول را از دی ان ان پلاس تهیه کرده اید لازم است توضیحات زیرا مطالعه بفرمایید . ما در نسخه های ما قبل 5.1 به پایین که دارای دیتاپیکر جی کوئری بود دیتاپیکر را کامل بومی سازی میکردیم. اما با توجه به این که در نسخه های جدید یعنی 5.05 به بعد اکشن فرم دیتاپیکر جی کوئری خود را حذف کرد و از یک دیتاپیکر خاصی استفاده کرده است که امکان شمسی سازی آن ممکن نیست . به همین جهت برای داشتن دیتاپیکر شمسی ما راه حل دیگری پیشنهاد میکنم . کافیست یک تکس باکس به فرم اضافه کنید و یک ایدی به آن تخصیص دهید و سپس با یک لایبری ساده دیتاپیکر جی کوئری شمسی را به ان اضافه کنید و با آیدی تکس باکس به ان اشاره کنید . در حال حاضر این بهترین و ساده ترین روش برای داشتن دیتاپیکر شمسی است. |
|
|
|
|
|
|
تاریخ عضویت : 1394/01/06
ارسالها : 729 نوشته
( تشکرها: 19 بار )
( 222 تشکر دریافتی در 194 ارسال )
|
[آموزش] افزودن تقویم شمسی به Action Form (روش استاندارد و بهینه) با سلام خدمت دوستان. برای استفاده از Datepicker شمسی در اکشن فرم، به جای اینکه برای هر فیلد کدنویسی کنیم، از یک روش اصولی استفاده میکنیم. در این روش، فایلهای اصلی را در تنظیمات ماژول لود کرده و فقط با یک کلاس CSS تقویم را فعال میکنیم. نکته مهم: این روش به گونهای طراحی شده که کمترین تداخل را با قالب سایت داشته باشد و سرعت لود را کاهش ندهد. مرحله اول: فراخوانی کتابخانهها ابتدا باید فایلهای CSS و JS مورد نیاز را به صفحه اضافه کنیم. به مسیر زیر بروید: Manage (مدیریت) > Settings (تنظیمات) > Page Settings (تنظیمات صفحه) یا اگر میخواهید فقط برای همین ماژول باشد: Settings (تنظیمات ماژول) > Advanced Settings (تنظیمات پیشرفته) > Page Footer (پاصفحه) کد زیر را در این بخش مربوطه قرار دهید (پیشنهاد میگردد جهت حداکثر سرعت فایل ها را دانلود کرده و لینک دهی داخلی کنید): کد:
<link rel="stylesheet" href="https://dnnplus.ir/Portals/0/DatePicker/persian-datepicker.min.css">
<script src="https://dnnplus.ir/Portals/0/DatePicker/persian-date.min.js" type="text/javascript"></script>
<script src="https://dnnplus.ir/Portals/0/DatePicker/persian-datepicker.min.js" type="text/javascript"></script>
مرحله دوم: فعالسازی اسکریپت حالا باید کدی بنویسیم که تقویم را روی فیلدها اعمال کند. وارد محیط طراحی Action Form شوید و به بخش زیر بروید: Module Settings > General > Initialization Scripts کد زیر را دقیقاً در این قسمت کپی کنید (دقت کنید که در این بخش نباید تگ <script> بگذارید): کد:
$(document).ready(function () {
// Delay execution to ensure elements are rendered
setTimeout(function () {
$(".pDatepicker").pDatepicker({
"inline": false,
"format": "L", // Default Format: YYYY/MM/DD
"viewMode": "day",
"initialValue": false, // Do not auto-fill the input
"position": "auto",
"observer": false, // Disable observer for better performance
"toolbox": {
"calendarSwitch": {
"enabled": false // Hide Gregorian switch
}
},
"responsive": true
});
}, 1000); // 1 second delay
});
مرحله سوم: استفاده در فرم کار تمام است! حالا برای هر فیلد متنی (Text Box) که میخواهید تقویم داشته باشد: - روی فیلد کلیک کنید.
- به بخش UI Settings بروید.
- در کادر CSS Classes عبارت pDatepicker را بنویسید.
موفق باشید. ویرایش شد بوسیله کاربر 1404/10/04 08:38:09 ق.ظ
| دلیل ویرایش: اصلاح کلی |
|
|
|
|
|
|
رفتن به انجمن
شما نمی توانید مطلب جدید در این انجمن ایجاد کنید
شما نمی توانید برای مطالب ارسالی پاسخ ارسال کنید
شما نمی توانید مطلب ارسالی خود را حذف کنید
شما نمی توانید مطلب ارسالی خود را ویرایش کنید
شما نمی توانید در مطلب ارسالی خود نظرسنجی ایجاد کنید
شما نمی توانید در این انجمن نظر دهید
اطلاعیه :
پرسش و پاسخ های تخصصی دی ان ان از کوکی ها استفاده می کند. با ادامه این فهرست از شما می خواهیم برای استفاده از کوکی ها موافقت کنید.
جزئیات بیشتر
بستن