2011-03-25 20 views
8

मेरे पास onkeyup ईवेंट वाला टेक्स्ट फ़ील्ड है। लेकिन जब मैं एक ब्राउज़र स्वत: पूर्ण मूल्य का चयन करता हूं तो यह घटना नहीं निकाल दी जाती है। मैंने एक ऑनक्लिक कार्यक्रम जोड़ा है, लेकिन यह काम नहीं करता है।जावास्क्रिप्ट ब्राउज़र का चयन पता लगाता है स्वत: पूर्ण मान

मैंने ब्राउज़ ऑटोको पूर्ण चयन को पकड़ने के लिए स्टैक ओवरफ्लो पर पोस्ट किए गए कई समाधानों का परीक्षण किया है, लेकिन इस समस्या को हल करने में कुछ भी नहीं है।

मुद्दा (Firefox 3.6, क्रोम 10.0 और IE8 पर पुनः प्रस्तुत) को देखने के लिए इस सरल उदाहरण का प्रयास करें:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
<head> 
    <title>Test</title> 
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.5.1.min.js"></script> 
    <script type="text/javascript"> 
    //<![CDATA[ 
     function onkeyupInput(){ 
      $('#divResult').text($('#myInput').val()); 
     } 
    //]]> 
    </script> 
</head> 
<body> 
    <form name="myForm" action="#"> 
     Tape a value and send it. Then select this value with your browser AutoComplete value :<br /> 
     <input id="myInput" name="myInput" type="text" onkeyup="onkeyupInput();" onclick="onkeyupInput();" value="" /> 
     <input type="submit" /> 
    </form> 
    Result of onkeypress and onclick : 
    <div id="divResult"></div> 
    <br /> 
    <b>The issue : Result of onkeypress and onclick is not update when an autocomplete value of a browser is selected.</b> 
</body> 
</html> 

धन्यवाद!

उत्तर

8

नए ब्राउज़र का समर्थन oninput घटना:

$(function() { 
    $('#myInput').on("input",function() { 
    $('#divResult').text($(this).val()); 
    }); 
}); 

<input id="myInput" name="myInput" type="text" value="" /> 

आप पुराने ब्राउज़र का समर्थन की जरूरत है, की कोशिश

var tId = ""; 
function monitor() { 
$('#divResult').text($('#myInput').val()); 
} 

$(function() { 
    $('#myInput') 
    .focus(function() { 
     tId=setInterval(monitor,100); 
    }) 
    .blur(function() { 
     clearInterval(tId); 
    }); 
}); 
+0

धन्यवाद, यह काम करता है! –

+0

@goby ग्रेट - प्रक्रिया में कुछ सीखने और सीखने में खुशी हुई – mplungjan

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