Armin Rahmati
3 سال پیش توسط Armin Rahmati مطرح شد
8 پاسخ

اجرا نشدن کامل onload جاوااسکریپت در blade لاراول

سلام دوستان.
من یه سایت نوبتدهی دارم که میخوام این امکان رو قرار بدم که فقط از ساعت 8 صبح تا ساعت 17 عصر بیماران فقط بتونن نوبت بگیرن که برای این کار فانشکن رو به صورت زیر تعریف کردم.

function enable()
{
    var time = new Date();
    var hours = time.getHours();
    if((hours > 8) && (hours < 17))
        document.getElementById("myBtn").disabled = false;
     else
        document.getElementById("myBtn").disabled = true;
}

و این هم فرم من در بلید لاراول است.

@foreach($doctors as $doctor)
                        <div class="col-sm-4 col-lg-4 col-md-4">
                            <div class="thumbnail">
                                <img src="{{ $doctor->images['images'] }}" alt="">
                                <div class="caption ratings">
                                    <hr>
                                    <h4 class="pull-right">{{ $doctor->fullName }}</h4>
                                    <hr>
                                    <h6 class="pull-right">روز حضور: {{ $doctor->presentDays }}</h6>
                                    <hr>
                                    <h6 class="pull-right">ساعت حضور: {{ $doctor->presentHours }}</h6>
                                    <hr>
                                    <h6 class="pull-right">تخصص: {{ $doctor->specialty }}</h6>
                                    <hr>
                                    <h6 class="pull-right">مدرک تحصیلی: {{ $doctor->degree }}</h6>
                                    <hr>
                                    <p>
                                    <form action="/doctor/turn" method="POST">
                                        {{ csrf_field() }}
                                        <input type="hidden" name="doctor_id" value="{{ $doctor->id }}">
                                        <button type="submit" class="btn btn-success pull-right" id="myBtn" onload="enable()">دریافت نوبت
                                        </button>
                                    </form>
                                </div>
                            </div>
                        </div>
                    @endforeach

اما مشکلی که هست این فانکشن فقط روی یه قسمت اعمال میشه، به صورت زیر:
توضیح تصویر رو وارد کنید

در واقع اگر دقیت کنید این فانکشن فقط بر روی button دریافت نوبت محبوبه حجتی اعمال شده و روی بقیه اعمل نشده.

برای رفع این مشکل باید چیکار کنم؟


ثبت پرسش جدید
حمیدرضا
تخصص : برنامه نویس
@hamidrezaabasi212 3 سال پیش آپدیت شد
0

سلام به خاطر این که به button یه id دادی واین که توحلقه هستش و باعث به تعداد تکرار حلقه id تکراری ساخته بشه.


Armin Rahmati
@arminrahmati999 3 سال پیش مطرح شد
0

@hamidrezaabasi212
خب الان باید چیکار کنم که این مشکل برطرف بشه؟


میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 3 سال پیش مطرح شد
0

کدنویسی جاوااسکریپت تون صحیح نیست.
ابتدا به همگی کلاس واحدی بدین جای دادن شناسه.
سپس همه ی دکمه ها رو انتخاب کنید، و با حلقه همه را غیرفعال کنید.

اینها همگی جز بخش های مقدماتی جاوااسکریپت هستش، پس روی مبانی جاوااسکریپت خودتون کار کنید.


Armin Rahmati
@arminrahmati999 3 سال پیش آپدیت شد
0

@milad
راستش من جاوااسکریپت زیاد کار نکردم و زبان اصلی من php اس، الان واسه یه قسمت از پروژم نیاز دارم.
میشه لطف کنید کدشو بنویسید؟


میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 3 سال پیش مطرح شد
0

دیگه نمیشه که این اندازه جاوااسکریپت رو بلد نباشید. احتمالا در این صورت زیاد با مشکل مواجه میشید.
توصیه می کنم براش وقت بزارین.

function enable()
{
    var time = new Date();
    var hours = time.getHours();
    if((hours > 8) && (hours < 17))
        document.querySelectorAll('.activation').forEach( function(item) {
        item.disabled = false;
        });
     else
        document.querySelectorAll('.activation').forEach( function(item) {
        item.disabled = true;
        });
}

میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 3 سال پیش مطرح شد
0

در ضمن برای دکمه هم، شناسه رو کلا حذف کنید (id = "mtBtn") و به کلاس ها، کلاس activation رو اضافه کنید.


Armin Rahmati
@arminrahmati999 3 سال پیش آپدیت شد
1

@milad
تشکر از شما بابت وقتی که گذاشتید.


میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 3 سال پیش مطرح شد
0

خواهش می کنم زنده باشین.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام