У меня есть цикл, который генерирует строки данных. Если я использую инструмент разработчика Chrome, я вижу, что каждая строка имеет уникальное значение для data-host-id
. Однако, когда я нажимаю на любую из записей, она всегда обновляет первую запись. Это не честь записи, которую я хотел бы обновить.Как удалить правильную запись с несколькими флажками с помощью Ajax
Примечание: Я не хочу удалять несколько записей одновременно, я просто хочу удалить соответствующую запись через связанную с ней кнопку.
Отрывок из HTML кода
<input data-size="mini" type="checkbox" class="switch-api"
data-on-text="Yes" data-off-text="No" id="api_id" data-host-id="{{ $k }}" checked>
фрагмент JS кода
$(".switch-api").bootstrapSwitch();
$('.switch-api').on('switchChange.bootstrapSwitch', function (event, state) {
if (state) {
$.ajax({
url: '/dashboard/'+ $('#api_id').attr('data-host-id') + '/toggleapicheck',
data: { api_id: $('#api_id').attr('data-host-id'), state:'true'},
Контроллер
public function toggleapicheck(Request $request)
{
$api_id = $request->input('api_id');
$state = $request->input('state');
$dashboard = new Dashboard();
$dashboard->toggleApicheck($api_id, $state);
}
Модель
function toggleApicheck($api_id, $state)
{
$sf = new \SensioLabs\Consul\ServiceFactory(array('base_url' => "http://127.0.0.1:8500"));
$kv = $sf->get('kv');
$kv->put('apichecks/'.$api_id.'/enable',$state);
}