Не могу прочитать свойство 'submit' из null, я использую laravel и javascript - PullRequest
0 голосов
/ 16 апреля 2020

Я хочу добавить продукт в избранное, но я не хочу загружать всю страницу, поэтому я использую JavaScript, как показано в коде, где я нарушил ancor, создал форму и принял идентификатор из формы и реализовал его с помощью функции submit, но появляется следующая ошибка и возникает Uncaught TypeError: Не удается прочитать свойство 'submit' из null. Пожалуйста, сообщите о важности. Спасибо

это представление

imageimage) }}">

Этот контроллер

class Favoritecontroller extends Controller
{
    public function add($id) {
       $customer = Auth::guard('customer')->user();

       $isFavorite = $customer->favorite_products()->where('product_id', $id)->count();
       if($isFavorite == 0) {
           $customer->favorite_products()->attach($id);
       }else {
           $customer->favorite_products()->detach($id);
       }
return redirect()->back();
    }
}

Этот маршрут

Route::group(['middleware' => ['auth:customer']], function () {
    Route::post('favorite/{id}/add', 'FavoriteController@add')->name('product.favorite');
});

1 Ответ

0 голосов
/ 16 апреля 2020

Я полагаю, что ваш JS терпит неудачу здесь

... onclick="document.getElementById('favorite-{{$p->id}}').submit()"

Правильный способ сделать это

... onclick="addToWhishList({{$p->id}})"

Тогда в вашем JS

<script>
function addToWhishList(formId) {
  //console.log(formId);
  document.getElementById('favorite-' + formId).submit();
}
</script>

Проверка работоспособности Демо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...