2011-06-21 22 views
17

प्राप्त करें मैं सोच रहा हूं कि चयनित आइटम के टेक्स्ट मान को jquery autocomplete पर कैसे पकड़ें।jquery स्वतः पूर्ण आइटम आइटम

मैं निम्नलिखित के रूप में jQuery initialised है

$(document).ready(function(){ 
    $("input#autocomplete").autocomplete({ 
     source: postcodelist, 
     select: function (event, ui) { 
      AutoCompleteSelectHandler(event, ui) 
     } 
    }); 
}); 

और मैं एक समारोह समारोह AutoCompleteSelectHandler (घटना, यूआई) बनाया है {}।

इस फ़ंक्शन के अंदर मैं डेटा को सही टेक्स्टबॉक्स में फ़ीड करने के लिए कुछ अतिरिक्त हैंडलिंग करना चाहता हूं लेकिन मैं यह नहीं समझ सकता कि चयनित आइटम के टेक्स्ट मान को कैसे पकड़ें।

मैंने Google को थोड़ा सा किया और उदाहरणों की कोशिश की लेकिन मुझे यह काम नहीं लग रहा है।

किसी भी मदद की बहुत सराहना की जाएगी।

बहुत बहुत धन्यवाद।

+1

को कोई मान निर्दिष्ट करने के लिए और वास्तव में हम मदद कर सकता है आप क्या करने की जरूरत –

उत्तर

30

ui पैरामीटर चयनित पाठ

function AutoCompleteSelectHandler(event, ui) 
{    
    var selectedObj = ui.item;    
    alert(selectedObj.value); 
} 
के साथ एक item संपत्ति है

स्रोत: http://jqueryui.com/demos/autocomplete/#event-select टैब "ईवेंट" पर जाएं और फिर "चयन करें"

+0

आपको बहुत बहुत धन्यवाद !!! जीवन बचतकर्ता! – rlee923

+0

इसका पूरा कार्यान्वयन क्या होगा? –

1

तुम सिर्फ एक ही तरह से इनपुट से मूल्य हड़पने आप उपयोगकर्ता themself में यह लिखा हो, तो होगा:

$('input#autocomplete').val() 
+2

यह आपको दे देंगे का इस्तेमाल करता है क्या उपयोगकर्ता टाइप किया गया, चयनित मूल्य नहीं। – rlee923

+0

शायद मैंने आपके प्रश्न को गलत समझा? मैंने सोचा था कि आप स्वत: पूर्ण के साथ चुने गए विकल्प की तलाश में थे। एक बार वे चयन करने के बाद, यह इनपुट में डालता है और यह उसी तरह से पुनर्प्राप्त करने योग्य है जैसे उपयोगकर्ता ने इसे टाइप किया है। – kinakuta

4

आपको अनाम कार्य को लागू करने की आवश्यकता नहीं है एक लपेटें, आप सीधे फ़ंक्शन रेफरी पास कर सकते हैं।

$(document).ready(function(){ 
    $("input#autocomplete").autocomplete({ 
     source: postcodelist, 
     select: AutoCompleteSelectHandler 
    }); 
}); 

कि विधि के भीतर, आप या तो पहुँच this या event.target वर्तमान मूल्य प्राप्त करने के लिए, दोनों मूल्यों इनपुट तत्व संदर्भित कर रहे हैं कर सकते हैं:

function AutoCompleteSelectHandler(event, ui) { 
    alert($(event.target).val()); 
    alert($(this).val()); 

    // alert(this.value); 
} 
+0

क्यों इसे सिर्फ 'ui' पैरामीटर से प्राप्त नहीं किया गया है जो विधि में पारित किया गया है जैसा कि jquery ui के दस्तावेज़ में लिखा गया है? – GeertvdC

+0

ओह मुझे नहीं पता था कि आपको पैरामीटर निर्दिष्ट करने की आवश्यकता नहीं है। पारितोषिक के लिए धन्यवाद! – rlee923

13
// list of clients 
     $("#client").autocomplete({ 
     source: "lib/getClientList.php", 
     minLength: 2, 
     select: function(event, ui) { 
      alert(ui.item.value); 
      } 
     }) 

;

ui.item.value संदर्भ कि jQuery आप पोस्ट करते हैं html मार्कअप इनपुट

+0

क्या चयनित आइटम का सूचकांक प्राप्त करना संभव है? – FrenkyB

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