چگونه جمع نمره ها را با چک باکس انتخاب شده به دست بیاوریم

3 سال پیش توسط محمود خسروی مطرح شد
آفلاین
user-avatar
محمود خسروی ( 18113 تجربه )
3 سال پیش
تخصص : طراح و برنامه نویس

لینک کوتاه اشتراک گذاری

0

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

من یک جدولی دارم به نام جدول تخلفات و در این جدول فیلدی وجود دارد به نام score یا همین نمره و title یا عنوان.

در ویو من به صورت @foreach و @endforeach و نمره ها به صورت چک باکس و عنوان نمایش می دهد.

سوال من اینجاست که چطور میشه وقتی که چک باکس اگر بلی بود نمره در زیر با هم جمع بشود.

یک چیزی تقریبا مثل این دمو. http://jsfiddle.net/zch۱۱bjo/۱/ این دمو با HTML ساده است. ولی من میخواهم نمره ها از دیتابیس بگیره و جمع شون کنه با آژاکس.

http://uupload.ir/files/kttj_1.jpg

سپاس فراوان از شما که پاسخ می دهید.

آفلاین
user-avatar
vahid Mohammadi ( 37202 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

@oxbir

خوب شما یه بار این رکوردها رو از دیتابیس گرفتید به نظر من مثل مثالی که زدید value هر چک باکس رو با score برابر کنید و طبق مثالی که لینکشو گزاشتید جمع بزنید.

آفلاین
user-avatar
محمود خسروی ( 18113 تجربه )
3 سال پیش
تخصص : طراح و برنامه نویس

لینک کوتاه اشتراک گذاری

0

@viva.mohammadi

اینو میدونم ولی من یه چیز دیگری می خواهم. من اون value هر چک باکس را به صورت JSON ذخیره کردم. به این صورت:

<table class="table table-bordered">
    @foreach($infractions as $infraction)
        <tr>
            <th>{{ $infraction->title }}</th>
            <td>
                <input type="hidden" id="num{{ $infraction->title }}" name="infractions[{{ $infraction->id }}]" value="0" >
                <input type="checkbox" value="1" onclick="{{ $infraction->score }}" name="infractions[{{ $infraction->id }}]" data-toggle="toggle" data-on="بلی" data-off="خیر" data-onstyle="success" data-offstyle="danger">
            </td>
        </tr>
    @endforeach
</table>

من سوالم اینجاست که وقتی کاربر روی چک باکس کلیک کرد اون onclick چگونه به AJAX بفرستیم.

onclick="{{ $infraction->score }}"

ممنون میشم اگر زودتر جواب دهید.

آفلاین
user-avatar
محمود خسروی ( 18113 تجربه )
3 سال پیش
تخصص : طراح و برنامه نویس

لینک کوتاه اشتراک گذاری

0

من ساعت ها تلاش کردم اما جمع شون نمی کنه؟ از دوستان اگر می دانند کمک کنند. من جای onclick را عوض کردم:

onclick="scorePlus({{ $infraction->score }})" 

اینم ajax:

function scorePlus (id)
{
    var value = parseInt(document.getElementById('num'+id).value, 10);
    value = isNaN(value) ? 0 : value;
    value++;
    document.getElementById('total').value = value;
}
برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.