2012-06-26 16 views
5

में खोज पैरामीटर कैसे पास करें मैं एक डेटा के साथ एक लिंक बनाने में सक्षम होना चाहता हूं जो यूआरएल में एक खोज पैरामीटर मान पास करेगा। लक्ष्य खोज मूल्य पैरामीटर के साथ डेटाटेबल खुले प्री-फ़िल्टर किए गए पृष्ठ के साथ होना है।डेटाटेबल्स - यूआरएल

मैंने कुछ नमूना डेटा के साथ काम करने के लिए एक jsfiddle सेट अप किया है।
http://jsfiddle.net/lbriquet/9CxYT/10/

विचार jsfiddle यूआरएल के लिए एक पैरामीटर जोड़ने के लिए इतना है कि पेज खोज इनपुट मूल्य "फ़ायरफ़ॉक्स" करने के लिए सेट, उदाहरण के लिए, और तालिका केवल खोज से मेल खाता है दिखाने के लिए फ़िल्टर के साथ प्रदर्शित होगी।

किसी भी मदद की वास्तव में सराहना की जाएगी !!

उत्तर

4

आप बस have a function that reads your URL var और फिर तालिका फ़िल्टर कर सकते हैं। मुझे लगता है कि आप अपने खोज के रूप में q = फ़ायरफ़ॉक्स पारित

// Read a page's GET URL variables and return them as an associative array. 
function getUrlVars() 
{ 
var vars = {}; 
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { 
     vars[key] = value; 
    }); 
    return vars; 

} 

$(document).ready(function() { 
    // Get the query from the url 
    var query = getUrlVars()['q']; 
    // create the table 
    var oTable = $('#example').dataTable(); 
    // Filter it 
    oTable.fnFilter(query, 2); 
}); 

फिडल यहाँ http://fiddle.jshell.net/9CxYT/17/show/?q=Firefox

+0

यह सही समाधान की तरह लगता है ... लेकिन मैं यह काम करने के लिए नहीं मिल सका। यहां एक jsfiddle है कि मैंने आपके कोड को एकीकृत करने की कोशिश की ... शायद मैं इसके बारे में सही तरीके से नहीं जा रहा हूं? यह सभी प्रविष्टियों को छुपाता है। http://jsfiddle.net/lbriquet/9CxYT/14/ – lbriquet

+1

जेएसफ़ील्ड डिज़ाइन फ्रेम को एक स्टैंडअलोन पृष्ठ (आईफ्रेम में नहीं) के रूप में देखा जा सकता है। ऐसा करने के लिए डिज़ाइन फ्रेम में राइट-क्लिक करें और "यह फ्रेम" चुनें और फिर "नए टैब में फ्रेम खोलें"। यह पृष्ठ को इस प्रकार लोड करता है: http://fiddle.jshell.net/lbriquet/9CxYT/14/show/ मैंने url पर "q" मान जोड़ने का प्रयास किया, लेकिन इसने खोज में अपना मूल्य नहीं जोड़ा मूल्य के साथ पंक्तियों को फ़िल्टर या दिखाएं। http://fiddle.jshell.net/lbriquet/9CxYT/14/show/?q=firefox क्या आप समझने में मेरी सहायता कर सकते हैं कि मैं क्या गलत कर रहा हूं? – lbriquet

+1

@lbriquet jsfiddle की उस विशेषता के बारे में नहीं पता था। वैसे भी यह getUrlVars समारोह था जो चूस गया, अब यह काम करता है। मैंने अपना उत्तर –

3

यह एक पुरानी सवाल यह है, लेकिन यह अभी भी उच्च पॉप अप होता है जब एक समाधान के लिए खोज। यह काम करने के लिए मैंने किया है।

$(document).ready(function() { 
 
    
 
    // First, get the search parameter. Here I use example.com#search=yourkeyword 
 
    var searchHash = location.hash.substr(1), 
 
     searchString = searchHash.substr(searchHash.indexOf('search=')) 
 
\t \t     .split('&')[0] 
 
\t \t     .split('=')[1]; 
 
    
 
    
 
    $('#example').dataTable({ 
 
    "oSearch": { "sSearch": searchString } 
 
    }); 
 
})

संबंधित मुद्दे