Я использую laravel, у меня есть список букв, я хочу, чтобы, когда я щелкнул по строке, цвет фона этой строки изменился.
Я делаю это с ajax.
это мой ajax: Ajax
это мой letter_table: таблица букв
у меня есть read_letter
с два числа 0,1
со значением по умолчанию 0
, когда значение 0
буква непрочитана и когда значение 1
читается буква.
это мой взгляд на список букв: Letter представление списка
и это представление списка писем в браузере, когда я не открываю никакую букву: список писем
и это представление письма при открытии письмо: список писем
, но моя проблема в том, что когда я нажимаю на другие буквы, это не работает, просто на первом пункте списка работает хорошо.
это мой контроллер: обновление read_letter в базе данных
Редактировать: вот коды
ajax:
$(document).ready(function () {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$("#update_ajax").on('click', function () {
var letter_id = $(this).data('id');
var read_letter = 1;
$.ajax({
type: "GET",
dataType: "json",
url: "/Letter/changeRead",
data: {'letter_id': letter_id, 'read_letter': read_letter},
success: function (data) {
console.log(data.success);
}
});
});
});
обновить ле tter_read in letterController:
public function updateLetterRead(Request $request)
{
$letter = Letter::find($request->letter_id);
$letter->read_letter = $request->read_letter;
$letter->save();
return response()->json(['success' => 'نامه خانده شد']);
}
кнопка для отображения буквы:
<td>
<a href="{{ route('Letter.show',$letter->id) }}"
data-id="{{ $letter->id }}"
id="update_ajax">
<i class="fas fa-eye"></i>
</a>
</td>