Je développe un ASP.Net MVCsite et j'y répertorie certaines réservations à partir d'une requête de base de données dans une table avec un ActionLinkpour annuler la réservation sur une ligne spécifique avec un certain BookingIdcomme celui-ci:
Mes réservations
<table cellspacing="3">
<thead>
<tr style="font-weight: bold;">
<td>Date</td>
<td>Time</td>
<td>Seats</td>
<td></td>
<td></td>
</tr>
</thead>
<tr>
<td style="width: 120px;">2008-12-27</td>
<td style="width: 120px;">13:00 - 14:00</td>
<td style="width: 100px;">2</td>
<td style="width: 60px;"><a href="/Booking.aspx/Cancel/15">cancel</a></td>
<td style="width: 80px;"><a href="/Booking.aspx/Change/15">change</a></td>
</tr>
<tr>
<td style="width: 120px;">2008-12-27</td>
<td style="width: 120px;">15:00 - 16:00</td>
<td style="width: 100px;">3</td>
<td style="width: 60px;"><a href="/Booking.aspx/Cancel/10">cancel</a></td>
<td style="width: 80px;"><a href="/Booking.aspx/Change/10">change</a></td>
</tr>
</table>
Ce serait bien si je pouvais utiliser le jQuery Dialogpour afficher un message demandant si l'utilisateur est sûr de vouloir annuler la réservation. J'ai essayé de faire fonctionner cela mais je n'arrête pas de me demander comment créer une fonction jQuery qui accepte les paramètres afin que je puisse remplacer le
<a href="https://stackoverflow.com/Booking.aspx/Cancel/10">cancel</a>
avec
<a href="#" onclick="ShowDialog(10)">cancel</a>.
La ShowDialogfonction ouvrirait alors la boîte de dialogue et passerait également le paramètre 10 à la boîte de dialogue de sorte que si l'utilisateur clique sur oui, elle affichera le href:/Booking.aspx/Change/10
J'ai créé la boîte de dialogue jQuery dans un script comme celui-ci:
$(function() {
$("#dialog").dialog({
autoOpen: false,
buttons: {
"Yes": function() {
alert("a Post to :/Booking.aspx/Cancel/10 would be so nice here instead of the alert");},
"No": function() {$(this).dialog("close");}
},
modal: true,
overlay: {
opacity: 0.5,
background: "black"
}
});
});
et le dialogue lui-même:
<div id="dialog" title="Cancel booking">Are you sure you want to cancel your booking?</div>
Alors finalement à ma question: comment puis-je accomplir cela? ou y a-t-il une meilleure façon de le faire?