Отправьте запрос MySQL при нажатии флажка с помощью AJAX

Я пытаюсь отправить запрос на обновление, когда <link href = "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel = "stylesheet" type = "text / css" /> <script type = "text / javascript" src = "http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" > </ script> <script src = "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js" > </ script> <script src = "js / checkbox.js" > </ script> нажата, используя AJAX. Как я могу это сделать?

Импорт HTML:

<td>
    <input type="checkbox" name="vehicle" value="" class="checkbox">  Ingevoerd<br>
</td>

HTML:

$(".checkbox").change(function() {
    window.alert(5 + 6);
    $.ajax({
        url: '../ingevoerd.php'
    });
});

(Да, мой флажок находится в таблице, я не знаю, должно ли это быть в форме.)

Код JavaScript:

window.alert

( при нажатии на этот флажок не срабатывает)$stmt = $db->prepare('UPDATE table SET temp=0 where id = 1'); $stmt->execute(); var_dump('test');

PHP-код:

$(".checkbox")

javascript,php,jquery,mysql,ajax,

0

Ответов: 1


2

Я предполагаю, что ваш код javascript работает до того, как ваш html существует, поэтому, когда ваш браузер пытается найти checkbox, еще нет элементов с checkboxклассом.

Вы должны запустить код только после того, как документ будет готов:

$(function() {
    $(".checkbox").change(function() {
        window.alert(5 + 6);
        $.ajax({
            url: '../ingevoerd.php'
        });
    });
});

В следующем примере вы можете видеть, что ничего не произойдет (потому что код javascript существует до того, как элементы доступны в DOM):

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
  $('#d1').css('background', 'red');
</script>
<div id="d1">some block</div>

Тот же пример, но дождитесь готовности DOM (этот пример будет работать так, как ожидалось):

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
  $(function() {
    $('#d1').css('background', 'red');
  });
</script>
<div id="d1">some block</div>

JavaScript, PHP, JQuery, MySQL, AJAX,
Похожие вопросы