Je crée du HTML avec une boucle qui a une colonne pour Action. Cette colonne est un lien hypertexte qui, lorsque l'utilisateur clique dessus, appelle une fonction JavaScript et transmet les paramètres ...
exemple:
<a href="#" OnClick="DoAction(1,'Jose');" > Click </a>
<a href="#" OnClick="DoAction(2,'Juan');" > Click </a>
<a href="#" OnClick="DoAction(3,'Pedro');" > Click </a>
...
<a href="#" OnClick="DoAction(n,'xxx');" > Click </a>
Je veux que cette fonction appelle une fonction Ajax jQuery avec les paramètres corrects.
De l'aide?
Utilisation de POST
function DoAction( id, name )
{
$.ajax({
type: "POST",
url: "someurl.php",
data: "id=" + id + "&name=" + name,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
}
Utiliser GET
function DoAction( id, name )
{
$.ajax({
type: "GET",
url: "someurl.php",
data: "id=" + id + "&name=" + name,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
}
MODIFIER:
Un meilleur moyen de le faire qui fonctionnerait (avec GET) si le javascript n’était pas activé serait de générer l’URL du href, puis d’utiliser un gestionnaire de clics pour appeler cet URL via ajax à la place.
<a href="/someurl.php?id=1&name=Jose" class="ajax-link"> Click </a>
<a href="/someurl.php?id=2&name=Juan" class="ajax-link"> Click </a>
<a href="/someurl.php?id=3&name=Pedro" class="ajax-link"> Click </a>
...
<a href="/someurl.php?id=n&name=xxx" class="ajax-link"> Click </a>
<script type="text/javascript">
$(function() {
$('.ajax-link').click( function() {
$.get( $(this).attr('href'), function(msg) {
alert( "Data Saved: " + msg );
});
return false; // don't follow the link!
});
});
</script>
Si vous voulez faire un appel ajax ou une simple fonction javascript, n'oubliez pas de fermer votre fonction avec le retour false
comme ça:
function DoAction(id, name)
{
// your code
return false;
}
<script type="text/javascript" src="jquery.js">
</script>
<script type="text/javascript">
function omtCallFromAjax(urlVariable)
{
alert("omt:"+urlVariable);
$("#omtDiv").load("omtt.php?"+urlVariable);
}
</script>
essayez ça marche pour moi
essayez quelque chose comme ça
#vote_links a
va attraper tous les identifiants dans les liens de vote div id ...
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery(\'#vote_links a\').click(function() {// alert(\'vote clicked\');
var det = jQuery(this).get(0).id.split("-");// alert(jQuery(this).get(0).id);
var votes_id = det[0];
$("#about-button").css({
opacity: 0.3
});
$("#contact-button").css({
opacity: 0.3
});
$("#page-wrap div.button").click(function(){
Voulez-vous passer des paramètres à une autre page ou à la fonction uniquement?
Si seulement la fonction, vous n'avez pas besoin d'ajouter le $ .ajax () tvanfosson ajouté. Ajoutez simplement le contenu de votre fonction à la place. Comme:
function DoAction (id, name ) {
// ...
// do anything you want here
alert ("id: "+id+" - name: "+name);
//...
}
Cela retournera une boîte d'alerte avec les valeurs id et name.