Как я могу использовать Ajax с Laravel? - PullRequest
0 голосов
/ 26 января 2019

В моем контроллере есть следующая функция.

public function index()
{
    $number = DB::table('counters')->first();

    return view('app', compact('number'));
}

public function count()
{
    DB::table('counters')->where('id', 1)->increment('number');
}

Маршруты

Route::get('/', 'CounterController@index');
Route::get('/count', 'CounterController@count');

View

<a href="{{action('CounterController@count')}}">
    <div class="button lighter-blue" id="form-button-1" data-attribute="1">
    Ja
    </div>
</a>

Функция подсчета работает, но я хочу сделать это с Ajax, потому что у меня есть номер в моем представлении.

<h3>Nummer: {{ $number->number }}</h3>

И я хочу нажать на кнопку, а затем число увеличивается, и оно показывает мне напрямую. Как я могу это сделать?

1 Ответ

0 голосов
/ 26 января 2019

Я не вижу ничего необычного здесь - похоже на стандартный ответ ajax.Есть множество хороших учебных пособий, таких как этот

Но, чтобы ответить на ваш вопрос, сначала сделайте кнопку кнопкой, чтобы jQuery / js мог принять действие вместо того, чтобы иметьобновить страницу.Что-то вроде:

<button id = 'getCount'>Get Count</button>

Это заменит всю указанную ссылку выше.

Затем перехватите ее в js с идентификатором:

$("#getCount").on('click', function(){ 
    // AJAX HERE
}

Затем ваш звонокполучить счетчик, который входит в вышеуказанный onClick (может упростить еще, но это показывает ясный метод ajax - вам нужно настроить для своего кода):

$.ajax({
      url: APP_URL + "/count" ,
      type: "GET",
       success: function (countResult) {
          showResult(countResult)
       },
       error: function () {
         alert ('Problem');
       }
  });

Я разбил отображение дляясность.Вы можете добавить идентификатор к <h3>, чтобы перезаписать:

<h3 id='count'>Nummer: {{$number->number}}</h3>

Тогда ваш метод show может просто написать в счетчике:

function showResult(count){
    $("#count").text('Nummer '+count);
}

Вам нужно будетнастроить, но это поможет вам, где вы должны быть.Посмотрите на учебник выше, который поможет вам понять, куда это идет, и вы можете в конечном итоге упростить это.

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