Jquery AJAX के साथ php फ़ाइल में डेटा पास करना

I'm using this code http://www.9lessons.info/2010/10/pagination-with-jquery-php-ajax-and.html

और यह बहुत अच्छा काम करता है, मैं उपयोगकर्ता को लंबवत से क्षैतिज दृश्य को बदलने के लिए बटन जोड़ना चाहता हूं

मैंने load_data.php संपादित किया और इसकी आवश्यकता के सभी कोड जोड़े।

नियंत्रक में मैंने संपादित किया:

data: "page="+page,

सेवा मेरे

data: "page="+page+"&view="+1,

and added the butसेवा मेरेn(btn_view) in controller but I can't make it work ( change the value from 1 सेवा मेरे 2)

और जोड़ा

            $('#btn_view').live('click',{ view: "2" },function(){
            loadData(1);

            });  

बाद

            $('#go_btn').live('click',function(){
                var pagea = parseInt($('.goसेवा मेरे').val());
                var no_of_pages = parseInt($('.सेवा मेरेtal').attr('a'));
                if(pagea != 0 && pagea <= no_of_pages){
                    loadData(pagea);
                }else{
                    alert('Enter a PAGE between 1 and '+no_of_pages);
                    $('.goसेवा मेरे').val("").focus();
                    return false;
                }

            });

how सेवा मेरे make the butसेवा मेरेn reload the controller and change view value सेवा मेरे 2 in load_data.php

0
मुझे आपका AJAX नहीं दिखाई देता है, लेकिन jQuery .ajax() के माध्यम से डेटा भेजने के लिए यह अधिमानतः इस तरह किया जाता है डेटा: {foo: "bar"} api.jquery.com/jQuery.ajax
जोड़ा लेखक Pedro Estrada, स्रोत

1 उत्तर

AJAX डेटा भेजने के लिए आपकी संरचना गलत है। मैं आपके लिंक पर गया हूं और उस ट्यूटोरियल से फ़ंक्शन की प्रतिलिपि बनाई है, और view चर के साथ अपडेट किया गया है AJAX डेटा गुणों में पारित किया जा रहा है।

आप दूसरे पैरामीटर के रूप में view को पास करेंगे, और loadData डिफ़ॉल्ट रूप से 1 को डिफ़ॉल्ट रूप से पास कर देगा यदि कुछ भी पास नहीं हुआ है।

function loadData(page, view) {

    view = view || 1;//view defaults to 1 if not passed in
    loading_show(); 
    $.ajax({
        type: "POST",
        url: "load_data.php",
        data: {
            page: page,
            view: view
        },
        success: function(msg) {
            $("#container").ajaxComplete(function(event, request, settings){
                loading_hide();
                $("#container").html(msg);
            });
        }
    });

}

तो फिर आपका व्यू बटन कोड इस तरह दिखता है:

$('#btn_view').live('click', function(){
    var view = 2;
    var page = 1;
    loadData(page, view);
});  

मुझे यकीन नहीं है कि आप यह निर्धारित करने के लिए क्या कर रहे हैं कि पृष्ठ क्या है, लेकिन मैं अनुमान लगा रहा हूं कि उस फ़ंक्शन में 1 के रूप में हार्डकोड किया जा रहा है जिसे आपको शायद आवश्यकता होगी इस कोड को फ़ंक्शन में कॉपी करने के लिए:

function establishPageAndLoadData(view) {
    view = view || null;//use view if passed in...
    var pagea = parseInt($('.goto').val());
    var no_of_pages = parseInt($('.total').attr('a'));
    if(pagea != 0 && pagea <= no_of_pages){
        loadData(pagea, view);//pass view to load function
    } else {
        alert('Enter a PAGE between 1 and '+no_of_pages);
        $('.goto').val("").focus();
        return false;
    }
}

$('#go_btn').live('click',function(){
    establishPageAndLoadData();//does page under the hood
});

तो अब आपने पेज चर का चयन करके अपना कोड केंद्रीकृत कर दिया है, आप इसे अपने view बटन में फिर से उपयोग कर सकते हैं। मैंने यहां उपयोग करने के लिए उस फ़ंक्शन में वैकल्पिक view चर में जोड़ा है:

$('#btn_view').live('click', function(){
    var view = 2;
    establishPageAndLoadData(view);//calculates page under the hood
}); 

I might be barking up the wrong tree here, but here your controller will always get passed two post variables: page and view

1
जोड़ा
बहुत बहुत धन्यवाद
जोड़ा लेखक user614963, स्रोत