এইচটিএমএল ট্যাগ <a> href এবং অনক্লিক উভয়ই কাজ করতে চান


123

আমি এইচটিএমএল ট্যাগ সম্পর্কে জিজ্ঞাসা করতে চাই

<a href="www.mysite.com" onClick="javascript.function();">Item</a>

কীভাবে এটি href এবং অনক্লিকের সাথে কাজ করে একটি ট্যাগ তৈরি করবেন ? (প্রথমে ক্লিক ক্লিক চালানো পছন্দ করুন href)

উত্তর:


232

একটি সামান্য সিনট্যাক্স পরিবর্তন সহ আপনার ইতিমধ্যে আপনার যা প্রয়োজন তা রয়েছে:

<a href="www.mysite.com" onclick="return theFunction();">Item</a>

<script type="text/javascript">
    function theFunction () {
        // return true or false, depending on whether you want to allow the `href` property to follow through or not
    }
</script>

<a>ট্যাগ onclickএবং hrefবৈশিষ্ট্যগুলির ডিফল্ট আচরণ হ'ল সঞ্চালন করা onclick, তারপরে hrefযতক্ষণ onclickনা ফিরে আসে ততক্ষণ অনুসরণ falseকরে ইভেন্ট বাতিল করে দেয় (বা ইভেন্টটি আটকানো হয়নি)


এলিমেন্ট.এডএভেন্টলিস্টনার ফাংশন দিয়ে এটি করারও কি উপায় আছে?
Thequah

4
আমি href="#"সত্যিকারের ইউআরএল পরিবর্তে সেখানে না দেওয়া পর্যন্ত আমার পক্ষে কাজ করে না ।
yegor256

আমি ল্যারাভেল কাঠামোটি ব্যবহার করছি, সুতরাং আমার ফলক দৃষ্টিতে আমি এটি অন্তর্ভুক্ত করেছি, এটি কাজ করছে না, কেউ লারাভেল দিয়ে এটি চেষ্টা করেছে?
বজির প্রবুদ্ধক

Href- তে এমভিসি নিয়ন্ত্রক হিসাবে কল করা যদি আমার কাছে কোনও ক্রিয়া পদ্ধতি থাকে তবে এই সমাধানটি কাজ করছে না। কেউ দয়া করে সাহায্য করতে পারেন?
ধরপেটেল

10

JQuery ব্যবহার করুন । আপনাকে clickইভেন্টটি ক্যাপচার করতে হবে এবং তারপরে ওয়েবসাইটে যেতে হবে।

$("#myHref").on('click', function() {
  alert("inside onclick");
  window.location = "http://www.google.com";
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" id="myHref">Click me</a>


11
আমি কোনও জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক ব্যবহার করব না। তবে আপনার উত্তরের জন্য আপনাকে ধন্যবাদ

7
উপরে কোনও বাস্তব লিঙ্ক নয়। এটি একটি নতুন ট্যাবে খোলা যায় না এবং এটি খুব খারাপ অভ্যাস। কোনও নতুন ট্যাবে যদি কিছু খোলা যায় (না ইউআরএল আছে) সর্বদা একটি অর্থপূর্ণ hrefবৈশিষ্ট্য যুক্ত করুন।
নিউজ

2

এইচটিএমএল নিম্নলিখিত ব্যবহার ব্যবহার করতে:

<a href="www.mysite.com" onclick="make(event)">Item</a>

<script>
    function make(e) {
        // ...  your function code
        // e.preventDefault();   // use this to NOT go to href site
    }
</script>

এখানে কাজ উদাহরণ


এটি ক্রোমে আমার জন্য কাজ করে তবে সাফারি মনে হয় ফাংশনটি চালাচ্ছে তবে href খুলবে না ... কোনও অভিযোগ?
বেন 21

আমি জেএস ছাড়াই ফিডল পরীক্ষা করেছি - কেবল খাঁটি এইচটিএমএল: <a href="http://example.com" >Item</a>এবং ক্রোমে আমি পৃষ্ঠাটি এই লিঙ্কটি চালানোর অনুমতি দেওয়ার জন্য কিছু বার্তা দেখতে পাই (ক্রোম ইউআরএল বারের শেষে সতর্কতা)। কনসোলে সাফারি আমি warrning দেখুন: [অবরুদ্ধ] পৃষ্ঠাটি fiddle.jshell.net/_display থেকে অনিরাপদ সামগ্রী প্রদর্শন করতে অনুমতি দেওয়া হয়নি example.com - তাই সম্ভবত এই কিছু নিরাপত্তা ইস্যু (শুধুমাত্র বেহালার উপর?)
কামিল Kiełczewski

1

কোন jQuery প্রয়োজন।

কিছু লোক বলেছেন যে ব্যবহার onclickকরা খারাপ অভ্যাস ...

এই উদাহরণটি খাঁটি ব্রাউজার জাভাস্ক্রিপ্ট ব্যবহার করে। ডিফল্টরূপে, দেখা যাচ্ছে যে ক্লিক হ্যান্ডলারটি নেভিগেশনের আগে মূল্যায়ন করবে, তাই আপনি নেভিগেশন বাতিল করতে পারেন এবং আপনি ইচ্ছে করলে নিজেরাই করতে পারেন।

<a id="myButton" href="http://google.com">Click me!</a>
<script>
    window.addEventListener("load", () => {
        document.querySelector("#myButton").addEventListener("click", e => {
            alert("Clicked!");
            // Can also cancel the event and manually navigate
            // e.preventDefault();
            // window.location = e.target.href;
        });
    });
</script>

-1

ng-clickজায়গায় ব্যবহার করুন onclick। এবং এটি এতটা সহজ:

<a href="www.mysite.com" ng-click="return theFunction();">Item</a>

<script type="text/javascript">
function theFunction () {
    // return true or false, depending on whether you want to allow 
    // the`href` property to follow through or not
 }
</script>

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