উত্তর:
সম্পাদনা করুন: যেহেতু আপনার উপাদানটি গতিশীলভাবে inোকানো হয়েছে, আপনার উদাহরণ হিসাবে আপনাকে ডেলিগেটon() করা ব্যবহার করতে হবে, তবে আপনাকে এটিকে কীডাউন ইভেন্টের সাথে আবদ্ধ করা উচিত, কারণ @ মার্ক মন্তব্য হিসাবে, আইপিতে কী-পিস ইভেন্টটি অ-চরিত্র কীগুলি ক্যাপচার করে না:
$("#parentOfTextbox").on('keydown', '#textbox', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
e.preventDefault();
// call custom function here
}
});
JQuery 1.9 এ কাজ করার উদাহরণ:
$('body').on('keydown', '#textbox', function(e) {
if (e.which == 9) {
e.preventDefault();
// do your code
}
});
e.preventDefault();পাঠ্যবক্সে সাদা স্থান aceোকানো রোধ করতে দ্বিগুণ করুন।
$('#textbox').live('keypress', function(e) {
if (e.keyCode === 9) {
e.preventDefault();
// do work
}
});
উপরের দেখানো পদ্ধতিগুলি আমার পক্ষে কাজ করে না, আমি কি কিছুটা পুরানো jquery ব্যবহার করছি, শেষ পর্যন্ত নীচে দেখানো কোড স্নিপেট এর জন্য কাজ করে - আমার একই অবস্থানে থাকা কারও ক্ষেত্রে পোস্ট করা
$('#textBox').live('keydown', function(e) {
if (e.keyCode == 9) {
e.preventDefault();
alert('tab');
}
});
ট্যাবে কী কী ব্যবহার করার একটি গুরুত্বপূর্ণ অংশটি তা জেনে রাখা যে ট্যাব সর্বদা ইতিমধ্যে কিছু করার চেষ্টা করবে, শেষে "মিথ্যা প্রত্যাবর্তন" করতে ভুলবেন না।
এখানে আমি কি করেছি। আমার একটি ফাংশন রয়েছে যা .blur চলমান এবং এমন একটি ফাংশন যা আমার ফর্ম ফোকাসের দিকে অদলবদল করে। মূলত এটি ফর্মের শেষে একটি ইনপুট যুক্ত করে এবং অস্পষ্টতার সাথে গণনা চালানোর সময় সেখানে যায়।
$(this).children('input[type=text]').blur(timeEntered).keydown(function (e) {
var code = e.keyCode || e.which;
if (code == "9") {
window.tabPressed = true;
// Here is the external function you want to call, let your external
// function handle all your custom code, then return false to
// prevent the tab button from doing whatever it would naturally do.
focusShift($(this));
return false;
} else {
window.tabPressed = false;
}
// This is the code i want to execute, it might be different than yours
function focusShift(trigger) {
var focalPoint = false;
if (tabPressed == true) {
console.log($(trigger).parents("td").next("td"));
focalPoint = $(trigger).parents("td").next("td");
}
if (focalPoint) {
$(focalPoint).trigger("click");
}
}
});
আপনি এই JQuery এপিআই ব্যবহার করে একটি ইভেন্ট ট্যাব ক্যাপচার করতে পারেন ।
$( "#yourInputTextId" ).keydown(function(evt) {
if(evt.key === "Tab")
//call your function
});
এটি আমার পক্ষে কাজ করেছে:
$("[id*=txtName]").on('keydown', function(e) { var keyCode = e.keyCode || e.which; if (keyCode == 9) { e.preventDefault(); alert('Tab Pressed'); } });