2012-03-08 11 views
5

私は、MySQLテーブルから生成されたさまざまなアイテムを扱うWebアプリケーションを持っています。ユーザーがそれをスクロールすると、MySQLデータベースにリクエストを挿入するアイテムの横にあるリンクをクリックできるようになります。通常、$ _GETメソッドを使用してURIから項目名&のユーザIDを取得するPHPページを作成します(&)。これをテーブルに挿入します。しかし、この場合、どこからでもユーザーをリダイレクトする必要はありません。私はちょうど、リクエストを送信し、成功した後に小さなメッセージを表示するリンクをしたい。ユーザをリダイレクトせずにリンクをクリックしてAJAXリクエストを送信する

私はjQuery/AJAXがこれに最も適していると思っていましたが、あまりにも慣れていないので、私は何をすべきか分かりません。任意のヒントが評価されています!

+0

あなたがしようとした? JQueryのハウツトを見てきましたが、その例があります。 – Churk

答えて

12

を参照してください。あなたは

$('.order_this').click(function(e){ 
    e.preventDefault();//in this way you have no redirect 
    var valueToPass = $(this).text(); 
    var url = "url/to/post/"; 
    $.post(url, { data: valueToPass }, function(data){...});//Make the ajax call 
}); 
+0

動的に生成された値をjQueryに渡す方法を教えてください。 ".$row['P/N'].”

+0

同様に、$ row ['P/N']の値を何とかオーバーロードできますか? –

+0

@AndrewDeForest私の答えを更新しました –

0

は、ユーザーがリダイレクトせずにリンクをクリックして、AJAX呼び出しを行い、このように

$('.classofyourlink').click(function(e){ 
    e.preventDefault();//in this way you have no redirect 
    $.post(...);//Make the ajax call 
}); 

ような何かをしなければならないhttp://api.jquery.com/jQuery.ajax/

$('#my-link').click(function(){ 
    $.ajax({ 
     url: "mypage.php", 
     context: document.body, 
     success: function(){ 
     $(this).addClass("done"); 
     } 
    }); 
    return false; 
}); 
+0

これはリンクが正常に発火するのを妨げません。AJAXリクエストだけです – Cfreak

+0

あなたはリダイレクトを防止していません –

3

HTML

<a id="aDelete" href="mypage.php">Delete</a> 

スクリプトのようなもの

$(function(){  
    $("#aDelete").click(function(){   
     $.post("ajaxserverpage.php?data1=your_data_to_pass&data2=second_value",function(data){ 
     //do something with the response which is available in the "data" variable 
    }); 
    }); 
    return false;  
}); 
を行う必要があり、あなたのケースでのjQueryに値を渡すために - ここで $.post

EDITのためのドキュメントがあります