সংশ্লিষ্ট রেডিও বোতামটি নির্বাচন করতে পাঠ্যকে ক্লিক করা


87

আমি পিএইচপি ব্যবহার করে একটি কুইজ ওয়েব অ্যাপ্লিকেশন তৈরি করছি। প্রতিটি প্রশ্নের পৃথক পৃথক সমন্বিত <label>এবং 4 টি সম্ভাব্য পছন্দ রয়েছে, radio buttonsব্যবহারকারীকে তার উত্তরটি নির্বাচন করতে দেয়। একক প্রশ্নের জন্য বর্তমান এইচটিএমএল দেখতে দেখতে:

<label for="349">What is my middle name?</label>
<br>
<input id="349" type="radio" value="1" name="349">Abe
<br>
<input id="349" type="radio" value="2" name="349">Andrew
<br>
<input id="349" type="radio" value="3" name="349">Andre
<br>
<input id="349" type="radio" value="4" name="349">Anderson
<br>

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

আমি পড়েছি পাঠ্যগুলির উপর ক্লিক করে নির্দিষ্ট রেডিও বোতামের পছন্দটি নির্বাচন করতে অক্ষম এবং প্রস্তাবনাগুলি তৈরির দিকে পরামর্শ পয়েন্টগুলিforid ট্যাগের এবং এর বৈশিষ্ট্যগুলিকে মিলিয়ে দেওয়ার । আমি এটি করেছি এবং এটি এখনও কাজ করে না।

আমার প্রশ্নটি হ'ল: আমি <input type="radio">কেবলমাত্র রেডিও বোতামটি নিজেই নির্বাচন করতে সক্ষম হওয়ার বিপরীতে কোনও বস্তুর পাঠ্য ক্লিক করতে সক্ষম হতে চাই । আমি জানি আমি এই সম্পর্কে আগেও পড়েছি কিন্তু আমার সমস্যার কোনও সমাধান খুঁজে পাচ্ছে না। কোন সহায়তা বা পরামর্শ অনেক প্রশংসা করা হয়!

উত্তর:


177

আপনার কোডটিতে, আপনি নিজেরাই ফর্মটিতে একটি লেবেল পেয়েছেন। আপনি প্রতিটি স্বতন্ত্র রেডিও গ্রুপে লেবেল রাখতে চান, নীচের মত দেখাচ্ছে।

<form>
  <p>What is my middle name?</p>
  <br>
  <input id="349" type="radio" value="1" name="question1">
  <label for="349">Abe</label>
  <br>
  <input id="350" type="radio" value="2" name="question1">
  <label for="350">Andrew</label>
  <br>
  <input id="351" type="radio" value="3" name="question1">
  <label for="351">Andre</label>
  <br>
  <input id="352" type="radio" value="4" name="question1">
  <label for="352">Anderson</label>
  <br>
</form>

আপনার মনে রাখা উচিত যে দুটি উপাদানের কখনও একই আইডি থাকা উচিত নয়। nameঅ্যাট্রিবিউট তাই ব্যবহার করা হয় রেডিও বোতাম দল হিসেবে কাজ এবং শুধুমাত্র একটি সময়ে একটি একক নির্বাচন করার অনুমতি দেয়।


7
খুব সহজ। ট্যাগগুলির প্রায় লুকানো কোনও বৈশিষ্ট্য আবার সন্ধান
পেলে

38

নাথনের উত্তর অনুসারে যদি রেডিও বোতাম এবং লেবেলটির মধ্যে কিছুটা অপ্রকাশ্য স্থান থাকে তবে মনে হয় । এখানে তাদের কীভাবে নির্বিঘ্নে যোগদান করতে হয় ( এই নিবন্ধটি দেখুন ):

<form>
    <p>What is my middle name?</p>
    <br>
    <label><input id="349" type="radio" value="1" name="question1">Abe</label>
    <br>
    <label><input id="350" type="radio" value="2" name="question1">Andrew</label>
    <br>
    <label><input id="351" type="radio" value="3" name="question1">Andre</label>
    <br>
    <label><input id="352" type="radio" value="4" name="question1">Anderson</label>
    <br>
</form>

4
আমি এই উত্তর পছন্দ। তবে আপনি কি নিশ্চিত যে আপনার এই পদ্ধতির সাথে "for" গুণাবলীও প্রয়োজন?
পিদ্দু

@ পিদ্দু: আমি মনে করি আপনি ঠিক বলেছেন, তাই আমি আমার উত্তর আপডেট করেছি। ধন্যবাদ!
ব্যবহারকারী 21820

রেডিও বোতাম এবং লেবেলের মধ্যে অতিরিক্ত স্থান এড়াতে আরেকটি বিকল্প হ'ল এটি কেবল সেখানে না রাখা <input id="349" type="radio" value="1" name="question1"><label for="349"> Abe</label>(ট্যাগগুলির মধ্যে কোনও স্পেস বা নতুন লাইন নেই)
আরে elদেলম্যান

4
আমি ক্রোম এবং ফায়ারফক্সে আমার পথটি পরীক্ষা করে দেখেছি যে এটি স্পেস ক্যারেক্টারটি সরিয়ে 7 থেকে 3 পিক্সেল থেকে অকেজোযোগ্য স্থান হ্রাস করে। এই-ইনলাইন-ব্লক-ডিভ-উপাদানগুলির মধ্যে কেন-সেখানে-একটি-অব্যক্ত-ফাঁক-ফাঁক নাও তা দেখুন । বাকী তিনটি পিক্সেল margin: 3px 3px 0 5px;হ'ল রেডিও বোতামের ডিফল্ট ডান মার্জিন (এটি ফায়ারফক্সে আরও লক্ষণীয় যেহেতু পূর্বনির্ধারিতভাবে একটি হোভার ইফেক্ট রয়েছে) যা মার্জিনটি সরিয়ে এবং প্যাডিংয়ের পরিবর্তে সিএসএসের মাধ্যমে স্থির করা যেতে পারে।
আরে Eidদেলম্যান

4
@ আরিডভ এইডেলম্যান: আমি দেখছি, তদন্তের জন্য ধন্যবাদ! যদিও সরলতার জন্য আমি পুরো জিনিসটি লেবেলে আবদ্ধ করে রেখেছি। =)
ব্যবহারকারী 21820

1

লেবেল ট্যাগটি প্রতিটি উত্তরের কাছাকাছি হওয়া উচিত, যেমন আবে, অ্যান্ড্রু ইত্যাদির চারপাশে ... এবং এগুলির প্রতিটিটির জন্য এটি অনন্য হওয়া দরকার।


1

লেবেল ট্যাগের মধ্যে ইনপুট ট্যাগে বাসা বাঁধাই লেবেলটি রেডিও বোতামের ঠিক সামনে উপস্থিত হওয়া নিশ্চিত করে। পূর্ববর্তী পদ্ধতির পরামর্শ দেওয়ার সাথে সাথে, আপনি এইচটিএমএল ফাইলের মধ্যে লেবেল ট্যাগটি যে কোনও জায়গায় রাখতে পারেন এবং ক্লিক করার সাথে সাথে এটি সম্পর্কিত রেডিও বোতামটি নির্বাচন করবে। এটা দেখ:

<html>
<body>

<form>
  <p>What is my middle name?</p>
  <br>
  <input id="349" type="radio" value="1" name="question1">

  <br>
  <input id="350" type="radio" value="2" name="question1">
  <label for="350">Andrew</label>
  <br>
  <input id="351" type="radio" value="3" name="question1">

  <br>
  <input id="352" type="radio" value="4" name="question1">
  <label for="352">Anderson</label>
  <br>
</form><br/>
<p>This is a paragraph</p>
  <label for="349">Abe</label><br/>
  <label for="351">Andre</label>
  
</body>
</html>

পরিবর্তে এইভাবে এটি করা এই ত্রুটিগুলি দূর করে:

<form>
  <p>What is my middle name?</p>
  <br>
  
  <label>
    <input id="349" type="radio" value="1" name="question1"/>Abe
  </label>
  <br>
  
  <label>
    <input id="350" type="radio" value="2" name="question1"/>Andrew
  </label>
  <br>
  
  <label>
    <input id="351" type="radio" value="3" name="question1"/>Andre
  </label>
  <br>
  
  <label>
    <input id="352" type="radio" value="4" name="question1"/>Anderson
  </label>
  <br>
</form>


0

আপনি এটি এইভাবে করতে পারেন

 <label for="1">hi</label>
 <input type="radio" id="1" />

সুতরাং আপনি যদি পাঠ্যে ক্লিক করেন বা লেবেল করেন তবে এটি রেডিও বোতামটি নির্বাচন করে। তবে আপনি যদি এটি করেন ...

<label for="1">//</label>

এবং আপনি এটি যুক্ত করুন কোডটির আগে আমি যা লিখেছি তা আপনি যদি দ্বিতীয় লেবেলে ক্লিক করেন তবে এটি রেডিওও নির্বাচন করবে।


0

আমি বছরের পর বছর ধরে এটি করে চলেছি, তবে ভেরিয়েবলগুলি ব্যবহার করে এই দুটিই আমার পক্ষে কাজ করে না।

    echo "<input type='radio' name='student' id='$studentID' value='$studentID'>
        <label for='$studentID'>$fname</label> $lname<br />\n";
    echo "<input type='radio' name='student' id='$studentID' value='$studentID'>
        <label for='$studentID'>$fname $lname</label><br />\n";

এবং এখানে উত্স:

        <input type='radio' name='student' id='986875' value='986875'>
        <label for='986875'>John</label> Brown<br />
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.