টাইপ এবং নাম দ্বারা লক্ষ্য ইনপুট (নির্বাচক)


132

আমার কিছু চেকবাক্স ইনপুটগুলি লুকিয়ে থাকা ইনপুটগুলিতে পরিবর্তন করতে হবে তবে কোনও পৃষ্ঠার সমস্ত ইনপুট নয়।

<input type="checkbox" name="ProductCode"value="396P4"> 
<input type="checkbox" name="ProductCode"value="401P4"> 
<input type="checkbox" name="ProductCode"value="F460129">

নীচের jquery কোডটি কেবলমাত্র টাইপ অনুসারে ইনপুট নির্বাচন করে যা সমস্ত চেক বাক্সগুলিকে লুকানো ইনপুটগুলিতে পরিবর্তিত করে এবং নির্বাচক হিসাবে উভয় প্রকারের ইনপুট = "চেকবক্স" এবং নাম = "প্রোডাক্ট কোড" পরীক্ষা করার উপায় রয়েছে যাতে আমি বিশেষত সেগুলি লক্ষ্য করতে পারি আমি কি পরিবর্তন করতে চাই?

$("input[type='checkbox']").each(function(){
var name = $(this).attr('name'); // grab name of original
var value = $(this).attr('value'); // grab value of original
var html = '<input type="hidden" name="'+name+'" value="'+value+'" />';
$(this).after(html).remove(); // add new, then remove original input
});

উত্তর:


285

আপনি একাধিক বৈশিষ্ট্য নির্বাচনকারী চান

$("input[type='checkbox'][name='ProductCode']").each(function(){ ...

অথবা

$("input:checkbox[name='ProductCode']").each(function(){ ...

আপনি যে আধুনিক ব্রাউজারগুলি document.getElementsByClassNameউপাদানগুলি নির্বাচন করতে ব্যবহার করতে পারবেন এবং nameগুণাবলী দ্বারা নির্বাচনের চেয়ে অনেক দ্রুত হতে হবে এমন পদ্ধতি প্রয়োগ করে আপনি যেগুলি নির্বাচন করতে চান সেগুলি সনাক্ত করার জন্য একটি সিএসএস শ্রেণি ব্যবহার করা ভাল would


দুজনেই আমার পক্ষে কাজ করেছেন তবে আমি দ্বিতীয় পদ্ধতিটি ব্যবহার করেছি। THX, আমার আরও একটি প্রশ্ন আছে তবে আমি একটি নতুন প্রশ্ন করব।
ব্যবহারকারী 357034

22

আপনি এইভাবে বিশিষ্ট নির্বাচনকারীদের একত্রিত করতে পারেন:

$("[attr1=val][attr2=val]")...

যাতে কোনও উপাদান উভয় শর্ত পূরণ করতে হয়। অবশ্যই আপনি এটি দুটির বেশি ব্যবহার করতে পারেন। এছাড়াও, না [type=checkbox]। jQuery এর জন্য একটি নির্বাচক রয়েছে, অর্থাত্ :checkboxশেষ ফলাফলটি:

$("input:checkbox[name=ProductCode]")...

অ্যাট্রিবিউট সিলেক্টরগুলি ধীরে ধীরে তাই প্রস্তাবিত পদ্ধতির আইডি এবং ক্লাস সিলেক্টরগুলি সম্ভব যেখানে ব্যবহার করা উচিত। আপনি আপনার মার্কআপটি এতে পরিবর্তন করতে পারেন:

<input type="checkbox" class="ProductCode" name="ProductCode"value="396P4"> 
<input type="checkbox" class="ProductCode" name="ProductCode"value="401P4"> 
<input type="checkbox" class="ProductCode" name="ProductCode"value="F460129">

আপনাকে এর থেকে আরও দ্রুত নির্বাচক ব্যবহার করতে দেয় :

$("input.ProductCode")...

স্পষ্টতই এটি কাজ করে তবে আমি কেবলমাত্র একজনকে সঠিক উত্তরের জন্য কৃতিত্ব দিতে পারি। :) একটি জিনিস ভেবেছি আমি শ্রেণিক কারণে লক্ষ্যবস্তু করতে পারব না যদি না আমি একটি ক্লাস না যোগ করি এবং কোন পয়েন্টটি তৈরি করে তবে মার্কআপে আমার অ্যাক্সেস নেই। তবে থেক্স !!!
ব্যবহারকারী 357034

6
input[type='checkbox', name='ProductCode']

এটি সিএসএস উপায় এবং আমি নিশ্চিত যে এটি jQuery এ কাজ করবে almost

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