2012-03-08 9 views
5

मेरे पास एक वेब एप्लिकेशन है जिसमें विभिन्न आइटम्स का समूह है, जो एक MySQL तालिका से उत्पन्न होते हैं। चूंकि उपयोगकर्ता इसके माध्यम से स्क्रॉल करते हैं, मैं चाहता हूं कि वे आइटम के बगल में एक लिंक पर क्लिक करने में सक्षम हों जो अनुरोध को MySQL डेटाबेस में सम्मिलित करेगा। आम तौर पर, मैं एक PHP पेज (जो मैं वैसे भी करूंगा) बनाकर ऐसा करता हूं जो $ _GET विधि & का उपयोग कर यूआरआई से आइटम नाम & उपयोगकर्ता आईडी को तालिका में डाल देता है। हालांकि, इस मामले में, मैं नहीं चाहता कि उपयोगकर्ता कहीं से भी रीडायरेक्ट हो जाएं। मैं सिर्फ लिंक को अनुरोध भेजना चाहता हूं, और सफल होने के बाद शायद एक छोटा संदेश प्रदर्शित कर सकता हूं।उपयोगकर्ता को रीडायरेक्ट किए बिना किसी लिंक पर क्लिक करके AJAX अनुरोध भेजें

मुझे लगा कि jQuery/AJAX इसके लिए सबसे अच्छा होगा, लेकिन जैसा कि मैं इसके बारे में बहुत परिचित नहीं हूं, मुझे यकीन नहीं है कि क्या करना है। किसी भी सुझाव की सराहना की जाती है!

+0

क्या है आपने कोशिश की? क्या आपने JQuery कैसे देखा है, cuz वहां इसके उदाहरण हैं। – Churk

उत्तर

12

देखें आप की तरह

$('.classofyourlink').click(function(e){ 
    e.preventDefault();//in this way you have no redirect 
    $.post(...);//Make the ajax call 
}); 
इस तरह से उपयोगकर्ता रीडायरेक्ट किए बिना एक लिंक पर क्लिक करके एक ajax कॉल बनाता में

कुछ करने के लिए। यहाँ के लिए $.post

संपादित डॉक्स कर रहे हैं - अपने मामले में jQuery के लिए मूल्य पारित करने के लिए आप की तरह

$('.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

पसंद है, क्या मैं किसी भी तरह से $ पंक्ति ['पी/एन'] मूल्य अधिभारित कर सकता हूं? –

+0

@AndrewDeForest मैंने अपना जवाब अपडेट किया –

0

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

एचटीएमएल कुछ करना चाहिए

<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;  
}); 
संबंधित मुद्दे