2010-08-03 45 views
7

में डिफ़ॉल्ट चयन ईवेंट को कैसे रोकें मेनू से किसी आइटम का चयन होने पर ट्रिगर किया गया; ui.item चयनित आइटम को संदर्भित करता है। चयन का डिफ़ॉल्ट क्रिया टेक्स्ट फ़ील्ड के मान को चयनित आइटम के मान के साथ प्रतिस्थापित करना है। इस घटना को रद्द करने से मान को अद्यतन होने से रोकता है, लेकिन मेनू को बंद होने से नहीं रोकता है। झूठीस्वत: पूर्ण jquery

+0

क्या तुमने कभी किया पता लगाओ? –

उत्तर

-1
इस पैरामीटर selectFirst का उपयोग कर

। मेरे लिए इस सवाल का जवाब इस तरह का चयन विधि के अंत में event.preventDefault(); डाल करने के लिए है:

$("#txt1").autocomplete({ 
    minLength: 1, 
    source: "abc.php", 
    select: function(event, ui) 
    { 
     //alert("Select"); 
     var label= ui.item.label; 
     var value= ui.item.value; 
     $('#txt1').val(ui.item.label); 
     event.preventDefault(); // <---- I moved! 
    } 
}); 

मेरे लिए अगर event.preventDefault(); समारोह के शुरू में डाल दिया है, तो डिफ़ॉल्ट ईवेंट सक्रिय नहीं है और बाकी समारोह का निष्पादन नहीं करता है। यदि यह अंत में स्थानांतरित हो जाता है, तो यह अपेक्षा के अनुसार काम करता है। मनाइए कि यह किसी और के लिए सहायक हो।

+0

काम नहीं करता है। क्षमा करें – Trip

6

मैं जानता हूँ कि यह एक बहुत पुरानी सवाल है, लेकिन मैं सिर्फ समस्या का सामना करना अपने आप आया था:

$("#txt1").autocomplete({ 
    minLength: 1, 
    source: "abc.php", 
    select: function(event, ui) 
    { 
     event.preventDefault(); 
     //alert("Select"); 
     var label= ui.item.label; 
     var value= ui.item.value; 
     $('#txt1').val(ui.item.label); 
    } 
}); 
+0

अंतिम स्वत: पूर्ण के साथ मेरे लिए काम नहीं कर रहा है। :( – user706420

0

तो यह मेरे लिए काम करने वाला एक हैक है: मेरे मामले में पुलडाउन में एक प्रविष्टि का चयन करना (या तो माउस क्लिक करके या ENTER को हाइलाइट करने और मारने के लिए तीर कुंजियों का उपयोग करके), मैं value का निर्माण करने के लिए उपयोग कर रहा था यूआरएल और फिर ब्राउज़र को भेज रहा है लेकिन यह अभी भी खोज बॉक्स में कॉपी हो गया है। मैंने कोशिश करने के लिए किए गए उत्तरों में से कोई भी काम नहीं किया। खोज बॉक्स में प्रदर्शित किया जा रहा तो value को रोकने के लिए, मैं value मेरी JSON में label के रूप में ही किया जाता है और एक अतिरिक्त क्षेत्र code कि मेरे select ईवेंट हैंडलर यूआरएल मैं जरूरत के निर्माण के लिए उपयोग करता है कहा:

$("#autocomplete").autocomplete({ 
    source: "http://www.example.com/search", 
    minlength: 2, 
    select: function(event, ui) { 
    // go to page on ENTER 
    window.location.href = "/page/" + ui.item.code; 
    } 
}); 
संबंधित मुद्दे