ajax post w jquery onclick
Mam przycisk, który wywołuje pole modalne, aby zaniknąć na ekranie, mówiąc o wartości wysłanej z przycisku, a następnie wygasnąć, działa to dobrze przy użyciu jquery, ale chcę również, aby przy tym samym kliknięciu wartość wysłana z przycisku była publikowana na funkcja php, ta, która ma zostać uruchomiona, i pole modalne, aby nadal pojawiać się i znikać.
Mam tylko to, aby moja strona wiedziała, z czego korzysta js:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>
Nadal jestem nowy, więc przepraszam za nowe pytanie, ale czy pozwoli to na uruchomienie ajaxa, czy tylko na jquery?
Obecny skrypt, który próbuję, to: (Edytowany, aby był poprawnie utworzony, na podstawie odpowiedzi, ale teraz nic się nie dzieje)
<script>
$('button').click(function()
{
var book_id = $(this).parent().data('id'),
result = "Book #" + book_id + " has been reserved.";
$.ajax
({
url: 'reservebook.php',
data: "book_id="+book_id,
type: 'post',
success: function()
{
$('.modal-box').text(result).fadeIn(700, function()
{
setTimeout(function()
{
$('.modal-box').fadeOut();
}, 2000);
});
}
});
});
</script>
Chociaż z tym modalne pole się nie zdarza.
Php to, resersebook.php:
<?php
session_start();
$conn = mysql_connect('localhost', 'root', '');
mysql_select_db('library', $conn);
if(isset($_POST['jqbookID']))
{
$bookID = $_POST['jqbookID'];
mysql_query("INSERT INTO borrowing (UserID, BookID, Returned) VALUES ('".$_SESSION['userID']."', '".$bookID."', '3')", $conn);
}
?>
aby być dokładnym, przycisk jest:
<div class= "obutton feature2" data-id="<?php echo $bookID;?>"><button>Reserve Book</button></div>
Jestem nowicjuszem w tym zakresie i przyjrzałem się dziesiątkom innych podobnych pytań tutaj, w ten sposób dostałem mój obecny skrypt, ale to po prostu nie działa.
Nie wiem, czy to ma znaczenie, ale skrypt z tylko ramką modalną, która działa, musi znajdować się na samym dole treści HTML, aby działać, nie wiem, czy z jakiegoś powodu ajax musi być na górze, ale wtedy pole modalne nie będzie t pracuj, tylko myśl.