ডকুমেন্ট.জেটমেন্টমেন্টবাইআইডি ("সিলেক্টলিস্ট") মান ব্যবহার করে এটি কীভাবে করবেন


141

JQuery এ, সমতুল্য কি document.getElementById("selectlist").value?

আমি একটি নির্বাচিত তালিকা আইটেমটির মান পাওয়ার চেষ্টা করছি।

ধন্যবাদ।


10
আপনি সম্ভবত নিম্নগামী হচ্ছেন কারণ আপনার প্রশ্নের উত্তর গুগলে মাত্র কয়েক সেকেন্ডে, বা জিকুয়েরি ডকস পড়ার মাধ্যমে দেওয়া যেতে পারে।
জুমব্যাট

53
এসও এর ব্যবহারকারীদের সাহসী করার জন্য টনসিলকে +1 করুন। এটি কতটা সহজ / কঠিন ছিল তা বিবেচনা না করেই তাঁর প্রশ্নটি পুরোপুরি বৈধ একটি। এই বিষয়ে ভবিষ্যতে অনুসন্ধানের জন্য এসও-তে আরও ট্র্যাফিক।
মিঃ স্মিথ

7
সিমন ছেলেরা - jQuery ভুডু আমার মতো কোনও পুরানো লোকের পক্ষে শেখার মতো এত সহজ নয়, সার্ভার ডেভ যে আমি গত 20 বছর বা তার বেশি সময় ধরে চলেছি - সুন্দর থাকুন এবং আমাদের উপর সহজ হন jQuery নতুনদের! :-)
marc_s

1
@ বোয়কওয়ার্ম বেন - তিনি সাহসী হতে পারেন তবে আপনি এসও ব্যবহারকারীদের দোষ দিতে পারবেন না। লোকেরা প্রশ্নটি জিজ্ঞাসা করে ব্যক্তির দ্বারা কিছুটা প্রচেষ্টা দেখতে পছন্দ করে।
জুমব্যাট

12
আমার মনে আছে, jQuery সম্পর্কে এই প্রথম জিনিসটি আমি পাইনি। আমি সত্য বলে যদি এটি একটি বৈধ প্রশ্ন মনে করি, এবং চিহ্নিত করা কঠোর ছিল। stackoverflow.com/questions/75296/…
জেমস উইজম্যান

উত্তর:



214

"সমতুল্য" এখানে শব্দ

যদিও ...

$('#selectlist').val();

... এর সমান ...

document.getElementById("selectlist").value

... এটা লক্ষণীয়

$('#selectlist')

... যদিও 'সমতুল্য' এর মতো নয় ...

document.getElementById("selectlist")

... যেমন প্রাক্তন একটি ডিকম বস্তু নয়, একটি jQuery অবজেক্ট ফেরত দেয়।

JQuery এক থেকে DOM অবজেক্ট (গুলি) পেতে, নিম্নলিখিতটি ব্যবহার করুন:

$('#selectlist').get(); //get all DOM objects in the jQuery collection
$('#selectlist').get(0); //get the DOM object in the jQuery collection at index 0
$('#selectlist')[0]; //get the DOM objects in the jQuery collection at index 0

1
সম্ভবত এখানে কিছুটা স্পর্শকাতর, তবে এটি দুর্দান্ত তথ্য হবে: jQuery থেকে ডোম অবজেক্ট পাওয়ার কোনও উপায় আছে কি? সম্পাদনা : সম্পাদনা আমার নিজের প্রশ্নের উত্তর।
ক্লেটন হিউজেস

4
আমি এক ঘন্টার জন্য একটি প্রাচীরের বিরুদ্ধে মাথা রেখেছি যতক্ষণ না বুঝেছি getElementById () $ () দ্বারা প্রতিস্থাপন করা যাবে না। এই উত্তরের জন্য আপনাকে অনেক ধন্যবাদ!
নাইট

3
@ ক্নাইট - হ্যাঁ আমি আশা করি যে আমি যখন প্রথমবার jQuery ব্যবহার করছিলাম তখন কেউ আমাকে ব্যাখ্যা করত।
জেমস উইজম্যান

1
jquery এ DOM অবজেক্টগুলি পাওয়ার পরবর্তী অংশের ব্যাখ্যার জন্য ধন্যবাদ :)।
কৈলাশ 19

+1 ওল্ডি তবে একটি গুডি। আমি গুগল ম্যাপস কেন একটি ডিওএম অবজেক্ট গ্রহণ করে কিন্তু আমার jQuery অবজেক্টটি গ্রহণ করে নি তা বোঝার চেষ্টা করছিলাম। একটি দ্রুত গুগল অনুসন্ধান আমাকে এখানে নেতৃত্ব দিয়েছে, jQuery ডক্সে নয়।
টনিজি

9

বিশৃঙ্খলা স্পষ্ট, যদিও এই ধরণের প্রশ্নের জন্য আপনার জ্যাকারি ডকুমেন্টেশনটি অনলাইনে চেক করা উচিত - এটি সত্যই যথেষ্ট বিস্তৃত। আপনি যে বৈশিষ্ট্যটি পরে যাচ্ছেন তাকে 'জ্যাকিউরি নির্বাচক' বলা হয়

সাধারণত আপনি করেন $('#ID').val()- তারপরে নির্বাচকের কাছ থেকে ফিরে আসা উপাদানটিতে অনেকগুলি কাজ করা সম্ভব। আপনি একটি নির্দিষ্ট শ্রেণীর সমস্ত উপাদানও নির্বাচন করতে পারেন এবং তাদের প্রত্যেককে কিছু করতে পারেন। কিছু ভাল উদাহরণের জন্য ডকুমেন্টেশন দেখুন।


9

এটি তিনটি বিভিন্ন উপায়ে করা যেতে পারে, যদিও সেগুলি প্রায় একই রকম

জাভাস্ক্রিপ্ট উপায়

document.getElementById('test').value

Jquery উপায়

$("#test").val()          

$("#test")[0].value             

$("#test").get(0).value

এটি সেরা উত্তর। ধন্যবাদ!
কার্টার মেডলিন

2

যারা ভাবছেন যে jQuery আইডি সিলেক্টররা ডকুমেন্টের চেয়ে ধীর are jQuery আসলে স্থানীয় পদ্ধতি ব্যবহার করে। এটি আসলে কারণ jQuery প্রথমে নিয়ামক অভিব্যক্তি ব্যবহার করে নির্বাচকের দ্বারা পরীক্ষা করে স্ট্রিং আলাদা করতে এবং অবশ্যই কনস্ট্রাক্টর চালাচ্ছে:

rquickExpr = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/

যেখানে কোনও DOM উপাদানকে আর্গুমেন্ট হিসাবে ব্যবহার করা অবিলম্বে 'এটি' দিয়ে ফিরে আসে।

আমার স্নাতকের:

$(document.getElementById('blah')).doSomething();

সর্বদা এর চেয়ে দ্রুত হবে:

$('#blah').doSomething();

0

কিছু ক্ষেত্রে আমি কেন স্মরণ করতে পারি না তবে $('#selectlist').val()সবসময় সঠিক আইটেমের মান ফেরত দেয় না, তাই $('#selectlist option:selected').val()পরিবর্তে আমি ব্যবহার করি ।


সম্ভবত আপনি কিছু লিঙ্ক পোস্ট করতে পারেন যা এটি নিশ্চিত করে। আমি তবে অবাক হব। এটি jQuery এ একটি মৌলিক বাগ হবে। আপনি কি লাইব্রেরির বগী সংস্করণটি ব্যবহার করছেন তা সম্ভব?
জেমস ওয়াইজম্যান

জেমস হতে পারত, আমার মনে হয় এটি ১.৩.০ এ থাকতে পারে, ১.৩.২ তে তিরস্কার করতে পারে না, তবে এটি আই 6 বা in এও হতে পারে যা আমি আর ইনস্টল করি নি, আমি দেখব যদি আমি আসল কারণটি খুঁজে বের করতে পারি এবং এটি এখানে রিপোর্ট করতে পারি।
ব্রেট রায়ান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.