উত্তর:
প্রথমে (সংক্ষিপ্ত) নির্বাচক পৃষ্ঠাটি ব্রাউজ করবেন না কেন?
এটি এখানে: :eq()অপারেটর। এটি ঠিক এর মতো ব্যবহৃত হয় get()তবে এটি jQuery অবজেক্টটি ফিরিয়ে দেয়।
অথবা আপনি .eq()ফাংশন ব্যবহার করতে পারেন ।
.eq()ওপি-র প্রশ্নের জন্য আরও উপযুক্ত। :eq()স্ট্রিং প্যারামিটারের মধ্যে ব্যবহৃত হয় $, অন্যদিকে .eq()বিদ্যমান জিকুয়েরি অবজেক্টের একটি পদ্ধতি।
$('select').find('option').eq(n)মূলত গ্রুপিংটিকে উপেক্ষা করবে এবং সামগ্রিকভাবে সমস্ত বিকল্প পাবে। আপনি যদি গ্রুপ অনুযায়ী এটি চান তবে এর মতো কিছু প্রয়োজনীয়:$('select').find('optgroup').each(function() { $(this).find('option').eq(n)...; })
আপনি : eq নির্বাচক ব্যবহার করতে পারেন , উদাহরণস্বরূপ:
$("td:eq(2)").css("color", "red"); // gets the third td element
বা eq (int) ফাংশন:
$("td").eq(2).css("color", "red");
এছাড়াও, মনে রাখবেন যে সূচকগুলি শূন্য-ভিত্তিক।
jQuery অবজেক্ট তৈরি করে এমন প্রশ্নের উপরে যদি আপনার নিয়ন্ত্রণ থাকে তবে ব্যবহার করুন :eq()
$("div:eq(2)")
যদি আপনার এটির নিয়ন্ত্রণ না থাকে (উদাহরণস্বরূপ, এটি অন্য ফাংশন বা কোনও কিছু থেকে পাস করা হচ্ছে), তবে ব্যবহার করুন .eq()
var $thirdElement = $jqObj.eq(2);
অথবা আপনি যদি তাদের একটি অংশ চান (তবে, তৃতীয়, চতুর্থ এবং পঞ্চম উপাদান) ব্যবহার করুন .slice()
var $third4th5thElements = $jqObj.slice(2, 5);
.eq()পরিবর্তে ব্যবহার করা উচিত :eq()। সামান্য পারফরম্যান্স বুস্ট।
.eq () - উপাদানের 0 ভিত্তিক অবস্থান নির্দেশ করে পূর্ণসংখ্যায়।
উদা:
একটি পৃষ্ঠা এতে সাধারণ তালিকা সহ বিবেচনা করুন:
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
</ul>
আমরা তালিকার আইটেমগুলির সেটটিতে এই পদ্ধতিটি প্রয়োগ করতে পারি:
$( "li" ).eq( 2 ).css( "background-color", "red" );
আপনার যদি ইতিমধ্যে কোনও ভেরিয়েবলের jquery অবজেক্ট থাকে, আপনি jquery ব্যবহার না করে কেবল এটিকে একটি সাধারণ সূচিযুক্ত অ্যারে হিসাবে বিবেচনা করতে পারেন:
var all_rows = $("tr");
for(var i=0; i < all_rows.length; i++){
var row = all_rows[i];
//additionally, you can use it again in a jquery selector
$(row).css("background-color","black");
}
যদিও উপরের উদাহরণটি কোনওভাবেই কার্যকর নয় তবে এটি উপস্থাপন করছে যে আপনি কীভাবে jquery দ্বারা নির্মিত বস্তুকে সূচকযুক্ত অ্যারে হিসাবে আচরণ করতে পারেন।
<select>উপাদানগুলির একটি তালিকা থাকে এবং আপনি নির্বাচিত কম্বোবক্স উপাদান চান, ব্যবহার করুন$(row).val();
যদি আমি আপনার প্রশ্নটি সঠিকভাবে বুঝতে পারি তবে আপনি সর্বদা এইভাবে ফাংশনটি মোড়ানো করতে পারেন:
var $someJqueryEl = $($('.myJqueryEls').get(3));
eq()এটি আপনাকে বিনামূল্যে দেয়।
আপনি যদি কোনও নির্দিষ্ট উপাদান / নোড আনতে চান বা লুপে যেমন উদাহরণস্বরূপ
<p class="weekday" data-today="monday">Monday</p>
<p class="weekday" data-today="tuesday">Tuesday</p>
<p class="weekday" data-today="wednesday">Wednesday</p>
<p class="weekday" data-today="thursday">Thursday</p>
সুতরাং, উপরের কোড লুপটি কার্যকর করা হয়েছে এবং আমরা নির্দিষ্ট ক্ষেত্রটি বেছে নিতে চাই তার জন্য আমাদের jQuery নির্বাচন ব্যবহার করতে হবে যা উপরের লুপ থেকে কেবলমাত্র প্রত্যাশিত উপাদান নির্বাচন করতে পারে, কোড হবে
$('.weekdays:eq(n)');
যেমন
$('.weekdays:eq(0)');
পাশাপাশি অন্যান্য পদ্ধতি দ্বারা
$('.weekday').find('p').first('.weekdays').next()/last()/prev();
তবে HTML <tag>অনন্য শ্রেণীর নাম থাকলে প্রথম পদ্ধতিটি আরও কার্যকর ।
দ্রষ্টব্য: দ্বিতীয় পদ্ধতিটি যখন লক্ষ্য উপাদান বা নোডে কোনও শ্রেণির নাম না হয় তখন ব্যবহার করা হয়।
আরও জন্য https://api.jquery.com/eq/ অনুসরণ করুন
পুনরাবৃত্তির জন্য একজন নির্বাচক ব্যবহার করে কোনও বোধগম্য মনে হয় না:
var some = $( '...' );
for( i = some.length -1; i>=0; --i )
{
// Have to transform in a jquery object again:
//
var item = $( some[ i ] );
// use item at will
// ...
}
<html>
<head></head>
<body>
<script type="text/javascript"
src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('li:eq(1)').hide();
});
</script>
<ol>
<li>First</li>
<li>Second</li>
<li>Third</li>
</ol>
</body>
</html>
এটি যখন চলে তখন অর্ডার করা তালিকায় দুটি আইটেম থাকে যা প্রথম এবং তৃতীয় দেখায়। দ্বিতীয়টি লুকানো ছিল।
$(function(){
$(document).find('div').siblings().each(function(){
var obj = $(this);
obj.find('div').each(function(){
var obj1 = $(this);
if(!obj1.children().length > 0){
alert(obj1.html());
}
});
});
});
<div id="2">
<div>
<div>
<div>XYZ Pvt. Ltd.</div>
</div>
</div>
</div>
<div id="3">
<div>
<div>
<div>ABC Pvt Ltd.</div>
</div>
</div>
</div>
.eq()পরিবর্তে হওয়ার কথা কি না:eq()?