জিকিউরি ব্যবহার করে গতিতে অনক্লিক ইভেন্ট যুক্ত করা


128

একটি প্লাগইন ব্যবহারের কারণে, আমি যথারীতি এইচটিএমএল ফর্ম ইনপুটগুলিতে "অনক্লিক" বৈশিষ্ট্য যুক্ত করতে পারি না। একটি প্লাগইন আমার সাইটে ফর্ম অংশ পরিচালনা করছে এবং এটি স্বয়ংক্রিয়ভাবে এটি করার কোনও বিকল্প দেয় না।

মূলত আমার এই ইনপুটটি রয়েছে:

<input type="text" id="bfCaptchaEntry" name="bfCaptchaEntry" style="">

আমি এটির মতো হওয়ার জন্য jQuery অনলোডের সাথে একটি অনক্লিক যুক্ত করতে চাই:

<input onClick="myfunction()" type="text" id="bfCaptchaEntry" name="bfCaptchaEntry" style="">

কিভাবে আমি এই কাজ সম্পর্কে যান?

আমি জানি এটি স্ট্যান্ডার্ড অনুশীলন নাও হতে পারে তবে আমার পরিস্থিতিতে এটি করা সবচেয়ে সহজ বিকল্প বলে মনে হয়।

আমি jQuery একটি নবাগত তাই যে কোনও সহায়তা খুব প্রশংসা করা হয়।

উত্তর:


211

আপনি clickইভেন্টটি ব্যবহার করতে পারেন এবং আপনার ফাংশনটিতে কল করতে পারেন বা আপনার যুক্তিটিকে হ্যান্ডলারে স্থানান্তর করতে পারেন :

$("#bfCaptchaEntry").click(function(){ myFunction(); });

আপনি clickইভেন্টটি ব্যবহার করতে পারেন এবং হ্যান্ডলার হিসাবে আপনার ফাংশন সেট করতে পারেন :

$("#bfCaptchaEntry").click(myFunction);

.ক্লিক()

জাভাস্ক্রিপ্ট ইভেন্টটিকে "ক্লিক করুন" এ ইভেন্ট হ্যান্ডলারের সাথে বেঁধে রাখুন, বা ইভেন্টটিকে কোনও উপাদানটিতে ট্রিগার করুন।

http://api.jquery.com/click/


আপনি onআবদ্ধ ইভেন্টটি ব্যবহার করতে পারেন "click"এবং আপনার ফাংশনটিতে কল করতে পারেন বা আপনার যুক্তিটিকে হ্যান্ডলারের মধ্যে স্থানান্তর করতে পারেন:

$("#bfCaptchaEntry").on("click", function(){ myFunction(); });

আপনি onআবদ্ধ ইভেন্টটি ব্যবহার করতে পারেন "click"এবং হ্যান্ডলার হিসাবে আপনার ফাংশনটি সেট করতে পারেন :

$("#bfCaptchaEntry").on("click", myFunction);

.চালু()

নির্বাচিত উপাদানগুলিতে এক বা একাধিক ইভেন্টের জন্য ইভেন্ট হ্যান্ডলার ফাংশন সংযুক্ত করুন।

http://api.jquery.com/on/


সহজ এবং বুঝতে সহজ। ঠিক আমি যা চেয়েছিলাম অন্য প্রশ্ন: jQuery ব্যবহার করে একটি পটভূমি রঙ পরিবর্তন সংহত করার সহজতম উপায় কী? বা 'স্টাইল.ব্যাকগ্রাউন্ড কালার = "সাদা" ব্যবহার করা আরও ভাল; ফাংশন বিভাগে?
ক্লাদিও দেলগাদো

38

যদি আপনি নিজের অবজেক্টের ক্লায়েন্টের নাম জানেন তবে এই পদ্ধতির চেষ্টা করুন (এটি গুরুত্বপূর্ণ নয় যে এটি বাটন বা টেক্সটবক্স)

$('#ButtonName').removeAttr('onclick');
$('#ButtonName').attr('onClick', 'FunctionName(this);');

আপনি যদি জিকুয়েরির সাথে কোনও সার্ভার অবজেক্টে অনক্লিক ইভেন্টটি যুক্ত করতে চান তবে এটি চেষ্টা করুন

$('#' + '<%= ButtonName.ClientID %>').removeAttr('onclick');
$('#' + '<%= ButtonName.ClientID %>').attr('onClick', 'FunctionName(this);');

এটি একসাথে কল না করে ফাংশন সেট করে।
ভাসিলিস

। ক্লিকের পরিবর্তে .attr অনক্লিক ব্যবহারের অর্থ হ'ল আপনি কোনও ফাংশন যেমন, "history.go(0);"বা কল করার পরিবর্তে সরাসরি স্ক্রিপ্ট কমান্ড বরাদ্দ করতে পারেন "alert('Hi!');"
জোনাথন

2
এটি আমার প্রয়োজনের মতোই ছিল, কারণ আমি উভয়ই একটি পৃথক ফাংশন সংজ্ঞায়িত করতে এবং এটি কল না করেই ফাংশনটি সেট করতে সক্ষম হতে চেয়েছিলাম। ধন্যবাদ 4 বছর দেরী।
কেভিন ওয়াকার 19

1
এই উত্তরটির বিষয়ে আমি যা পছন্দ করি তা হ'ল এটি ফাংশনটি কল করে না তবে কেবল
অন্লিক

18

নীচের পদ্ধতির চেষ্টা করুন,

$('#bfCaptchaEntry').on('click', myfunction);

অথবা যদি jQuery একটি নিখুঁত প্রয়োজনীয়তা না হয় তবে নীচে চেষ্টা করুন,

document.getElementById('bfCaptchaEntry').onclick = myfunction;

তবে উপরোক্ত পদ্ধতিতে হ্যান্ডলার হিসাবে নিবন্ধিত হওয়ার চেয়ে সম্পত্তি হিসাবে অনক্লিক সেট করার কারণে কিছু ত্রুটি রয়েছে ...

এই পোস্টে আরও পড়ুন https://stackoverflow.com/a/6348597/297641


যখন আপনি 'তবে উপরোক্ত পদ্ধতিটি' বলছেন, আপনি যদি কেবলমাত্র সরল জাভাস্ক্রিপ্ট পদ্ধতিটি উল্লেখ করছেন .onclickবা ব্যবহারের তুলনায় উভয় সংস্করণকে এক হিসাবে ভাগ করে নিচ্ছেন তা পরিষ্কার নয় .click। আমি .onহ্যান্ডলারটি যেমন নিবন্ধভুক্ত করি তেমন এটি পূর্বেরটিও আমি জানি , তবে এটি শিখতে অন্য কোথাও চেক করতে হয়েছিল। আপনার উত্তরে যদি এটি আরও পরিষ্কার হয়ে থাকে তবে ভবিষ্যতের পাঠকদের পক্ষে ভাল হবে ...;)
অ্যান্টন চ্যানিং


1
let a = $("<a>bfCaptchaEntry</a>");
a.attr("onClick", "function(" + someParameter+ ")");

0

অথবা আপনি এটি নির্ধারণ করতে একটি তীর ফাংশন ব্যবহার করতে পারেন:

$(document).ready(() => {
  $('#bfCaptchaEntry').click(()=>{

  });
});

উন্নত ব্রাউজার সহায়তার জন্য:

$(document).ready(function() {
  $('#bfCaptchaEntry').click(()=>{

  });
});

1
গ্রহণযোগ্য উত্তর ইতিমধ্যে .click()পদ্ধতিটির পরামর্শ হিসাবে এটি কীভাবে নতুন কিছু সরবরাহ করে তা আমি দেখতে পাচ্ছি না । তীর ফাংশন ব্যবহার করতে হবে বা নিয়মিত ফাংশনগুলি, আমার মতে, একটি প্রশ্ন জিজ্ঞাসিত প্রশ্নের সাথে সম্পর্কিত নয়। এবং আরও ভাল ব্রাউজার সমর্থনের জন্য আপনার সম্ভবত উভয় তীর ফাংশন সরিয়ে নেওয়া উচিত, কেবল প্রথমটি নয়।
এগ্রিমে

কারণ jQuery ব্যবহারের আরেকটি উপায়
গ্যাব্রিয়েল জায়েম সিয়েরা রুয়া
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.