JQuery এর সাথে একটি চেকবক্স চেক করা হয়েছে কিনা তা পরীক্ষা করা হচ্ছে


588

যদি চেকবক্সটি চেক করা হয়, তবে আমার কেবলমাত্র 1 হিসাবে মান পাওয়া দরকার; অন্যথায়, আমি এটি 0 হিসাবে পাওয়া দরকার j jQuery ব্যবহার করে আমি এটি কীভাবে করব?

$("#ans").val() এক্ষেত্রে আমাকে সর্বদা একটি অধিকার দেবে:

<input type="checkbox" id="ans" value="1" />

2
.val () হ'ল মান বিশিষ্টতা অর্জন করা, চেকের স্থিতি নয়। মান বৈশিষ্ট্যটি যে কোনও হতে পারে, এটি বুলিয়ান হওয়ার দরকার নেই।
পাবলো পাজোস

আপনি যদি এখনও আশেপাশে থাকেন তবে আপনি আধুনিক সফ্টওয়্যারটির জন্য গৃহীত উত্তরটি আপডেট করতে চাইতে পারেন ... প্রচুর লোক এখনও এই প্রশ্নটি দেখতে পাবে
xaxxon

উত্তর:


1008

.is(':checked')এটি পরীক্ষা করা হয়েছে কিনা তা নির্ধারণ করতে ব্যবহার করুন এবং তারপরে আপনার মানটি সেট করুন।

আরও তথ্য এখানে।


1
এছাড়াও, আপনি যখন $ ("# আইডি") করেন a এবং আপনি যা চান তা করুন।
জানাল্ডার

1
সম্ভবত আজকাল এটি গুরুত্বপূর্ণ নয়: রিশার্পার (আমার ধারণা) একটি সতর্কতা প্রকাশ করেছে " সিউডো-ক্লাস 'পরীক্ষা করা' ইন্টারনেট এক্সপ্লোরার 8.0 এর সাথে সামঞ্জস্যপূর্ণ নয় "।
উয়ে কেইম

211
$("#ans").attr('checked') 

এটি পরীক্ষা করা হয়েছে কিনা আপনাকে বলবে। আপনি চেকবক্সটি চেক / চেক করতে দ্বিতীয় / পরামিতিটি সত্য / মিথ্যা ব্যবহার করতে পারেন।

$("#ans").attr('checked', true);

প্রতি মন্তব্য, উপলভ্য propপরিবর্তে ব্যবহার করুন attr। উদাহরণ:

$("#ans").prop('checked')

90

শুধু ব্যবহার $(selector).is(':checked')

এটি একটি বুলিয়ান মান প্রদান করে।



21

স্টিফান ব্রিংকম্যানের উত্তরটি দুর্দান্ত তবে নতুনদের জন্য অসম্পূর্ণ (ভেরিয়েবল অ্যাসাইনমেন্টটি বাদ দেয়)। শুধু নির্মল:

// this structure is called a ternary operator
var cbAns = ( $("#ans").is(':checked') ) ? 1 : 0;

এটি এর মতো কাজ করে:

 var myVar = ( if test goes here ) ? 'ans if yes' : 'ans if no' ;

উদাহরণ:

var myMath = ( 1 > 2 ) ? 'yes' : 'no' ;
alert( myMath );

সতর্কতাগুলি 'না'

যদি এটি সহায়ক হয় তবে দয়া করে স্টেফান ব্রিংকম্যানের উত্তরটিকে সমর্থন করুন।



15

আমি আগেও একই সমস্যা পেয়েছি, আশা করি এই সমাধান আপনাকে সহায়তা করতে পারে। প্রথমে আপনার চেকবক্সগুলিতে একটি কাস্টম বৈশিষ্ট্য যুক্ত করুন:

<input type="checkbox" id="ans" value="1" data-unchecked="0" />

মান পেতে jQuery এক্সটেনশন লিখুন:

$.fn.realVal = function(){
    var $obj = $(this);
    var val = $obj.val();
    var type = $obj.attr('type');
    if (type && type==='checkbox') {
        var un_val = $obj.attr('data-unchecked');
        if (typeof un_val==='undefined') un_val = '';
        return $obj.prop('checked') ? val : un_val;
    } else {
        return val;
    }
};

চেক-বাক্সের মান পেতে কোড ব্যবহার করুন:

$('#ans').realVal();

আপনি এখানে পরীক্ষা করতে পারেন


10
... কারণ jQuery "আরও কম
লেখুন

আপনি দীর্ঘ গল্পে চলে গেছেন জ্যাকিউরির বিকাশকারী কম লিখতে চান এবং আরও আরও কিছু করতে চান। সাধারণ সমস্যা সহজ সমাধানের জন্য প্রাপ্য
শেপসিবার

হ্যাঁ, রাজি, কম লিখুন, আরও কিছু করুন। আপনি একবার এক্সটেনশানটি লিখেন, এবং বাকি সময়গুলির জন্য, আপনি কেবলমাত্র API rad (সামেরাদিও) re.realVal () কল করুন, আপনাকে অনেক বার এক্সটেনশন লেখার দরকার নেই।
আলফেকভিন

আপনার একবারও এক্সটেনশন লিখতে হবে না, 'বহুবার' মনে রাখবেন না! ওও
কোজ


7
<input type="checkbox" id="ans" value="1" />

জ্যাকোয়ারি: var test= $("#ans").is(':checked') এবং এটি সত্য বা মিথ্যা ফিরে আসে।

আপনার ফাংশনে:

$test =($request->get ( 'test' )== "true")? '1' : '0';


4

ব্যবহার করুন:

$("#ans option:selected").val()

যদি এটি নির্বাচিত না হয়, তবে প্রথম অংশটি কোনও কিছুই ফেরত দেবে না, তাই না?
xaxxon

@Senthil, অপ একটি নির্বাচিত চেকবক্সটি মান পেতে, বরং জিজ্ঞাসা করা হয় না return 1যদি এটা নির্বাচন করা হয়
ওম শংকর

4
function chkb(bool){
if(bool)
return 1;
return 0;
}

var statusNum=chkb($("#ans").is(':checked'));

চেকবক্সটি চেক করা থাকলে স্থিতিসংখ্যা 1 সমান হয় এবং 0 না হলে এটি সমান হয়।

সম্পাদনা: আপনি ফাংশনটিতে DOM যুক্ত করতে পারেন।

function chkb(el){
if(el.is(':checked'))
return 1;
return 0;
}

var statusNum=chkb($("#ans"));

4

আমি সম্প্রতি একটি কেস নিয়ে এসেছি যেখানে ব্যবহারকারী যখন বোতামে ক্লিক করেন তখন আমাকে চেকবক্সের চেক মান দরকার হয়। এটি করার একমাত্র সঠিক উপায় হল prop()অ্যাট্রিবিউট ব্যবহার করা।

var ansValue = $("#ans").prop('checked') ? $("#ans").val() : 0;

এটি আমার ক্ষেত্রে কাজ করেছে হয়তো কারও এটির প্রয়োজন হবে।

যখন আমি চেষ্টা করেছি .attr(':checked')এটি ফিরে এসেছে checkedতবে আমি বুলেটিন মান এবং .val()বৈশিষ্ট্যের মান ফিরিয়ে দিতে চেয়েছিলাম value


4

বিভিন্ন বিকল্প আছে যেমন ....

 1. $("#ans").is(':checked') 
 2. $("#ans:checked")
 3. $('input:checkbox:checked'); 

যদি এই সমস্ত অপশনটি সত্য হয় তবে আপনি মানকে অ্যাকর্ডিংয়ে সেট করতে পারেন।


প্রথমটি হওয়া উচিত (': চেক করা'), অন্যথায় কাজ করে না।
এরি লিভশিন

2

এটা চেষ্টা কর

$('input:checkbox:checked').click(function(){
    var val=(this).val(); // it will get value from checked checkbox;
})

অন্যথায় মিথ্যা চেক করা থাকলে এখানে পতাকাটি সত্য

var flag=$('#ans').attr('checked');

আবার এই চেক করা হবে

$('#ans').attr('checked',true);


0

এই দুটি পদ্ধতি দ্বারা আপনি মান (সত্য / মিথ্যা) পেতে পারেন

$("input[type='checkbox']").prop("checked");
$("input[type='checkbox']").is(":checked");

0

প্রথমে মানটি পরীক্ষা করে দেখুন

$("#ans").find("checkbox").each(function(){
    if ($(this).prop('checked')==true){ 
    var id = $(this).val()
    }
});

অন্যটি 0 মান সেট করুন


0

আপনি যদি চেক বা না হওয়াটির পূর্ণসংখ্যার মান চান তবে চেষ্টা করুন:

$("#ans:checked").length

0

আপনি এটি এইভাবে সম্পাদন করতে পারেন:

$('input[id=ans]').is(':checked');     
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.