html - কিভাবে একটি চেকবক্স jQuery চেক করা হয় কিনা তা পরীক্ষা করবেন?





dom checkbox (25)


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

<input type="checkbox" name="planned_checked" checked id="planned_checked"> Planned

$("#planned_checked").change(function() {
    if($(this).prop('checked')) {
        alert("Checked Box Selected");
    } else {
        alert("Checked Box deselect");
    }
});

    $("#planned_checked").change(function() {
        if($(this).prop('checked')) {
            alert("Checked Box Selected");
        } else {
            alert("Checked Box deselect");
        }
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="checkbox" name="planned_checked" checked id="planned_checked"> Planned

আমি চেকবক্সের চেককৃত সম্পত্তি চেক করতে এবং চেকআউটের উপর ভিত্তি করে একটি ক্রিয়া সম্পাদন করতে চাই।

উদাহরণস্বরূপ, বয়স চেকবাক্সটি চেক করা থাকলে, বয়স প্রবেশ করতে আমাকে একটি টেক্সটবক্স প্রদর্শন করতে হবে, অন্যথায় পাঠ্যবাক্সটি লুকান।

কিন্তু নিচের কোডটি ডিফল্টরূপে false করে:

if ($('#isAgeSelected').attr('checked'))
{
    $("#txtAge").show();
}
else
{
    $("#txtAge").hide();
}

আমি কিভাবে সফলভাবে সম্পত্তি checked করতে পারি?




JQuery ব্যবহার করে 1.6

<input type="checkbox" value="1" name="checkMeOut" id="checkMeOut" checked="checked" />

// traditional attr
$('#checkMeOut').attr('checked'); // "checked"
// new property method
$('#checkMeOut').prop('checked'); // true

নতুন সম্পত্তি পদ্ধতি ব্যবহার করে:

if($('#checkMeOut').prop('checked')) {
    // something when checked
} else {
    // something else when not
}



আমি এটা ব্যবহার করছি

 <input type="checkbox" id="isAgeSelected" value="1" /> <br/>
 <input type="textbox" id="txtAge" />

 $("#isAgeSelected").is(':checked') ? $("#txtAge").show() : $("#txtAge").hide();



আমি এটা সহজ এক হতে হবে

$('#isAgeSelected').change(function() {
    if($(this).is(":checked")) {
        $('#txtAge').show();
    }
else{
        $('#txtAge').hide();
    }                                          
});



JQuery এর ব্যবহার করুন is() ফাংশন:

if($("#isAgeSelected").is(':checked'))
    $("#txtAge").show();  // checked
else
    $("#txtAge").hide();  // unchecked



শীর্ষ উত্তর আমার জন্য এটা না। যদিও এটি ছিল:

<script type="text/javascript">
    $(document).ready(function(){

        $("#li_13").click(function(){
            if($("#agree").attr('checked')){
                $("#saveForm").fadeIn();
            }
            else
            {
                $("#saveForm").fadeOut();
            }
        });
    });
</script>

মূলত যখন এলিমেন্টটি # li_13 ক্লিক করা হয়, এটি পরীক্ষা করে যে # element (যা চেকবাক্স) সম্মত হয় তা .attr('checked') ফাংশন ব্যবহার করে চেক করা হয় কিনা তা পরীক্ষা করে। যদি এটি # শেভফর্ম উপাদানের মধ্যে ফেইড হয়, এবং যদি সংরক্ষণ ফরম উপাদানটি fadeOut না হয়।




এই একই জিনিস করতে কিছু ভিন্ন পদ্ধতি:

$(document).ready(function (){

    $('#isAgeSelected').click(function() {
        // $("#txtAge").toggle(this.checked);

        // Using a pure CSS selector
        if ($(this.checked)) {
            alert('on check 1');
        };

        // Using jQuery's is() method
        if ($(this).is(':checked')) {
            alert('on checked 2');
        };

        //  // Using jQuery's filter() method
        if ($(this).filter(':checked')) {
            alert('on checked 3');
        };
    });
});
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<input type="checkbox" id="isAgeSelected"/>
<div id="txtAge" style="display:none">Age is something</div>




এটা আমার জন্য কাজ করেছে:

$get("isAgeSelected ").checked == true

যেখানে isAgeSelected করা হয় আইডি নিয়ন্ত্রণ।

এছাড়াও, @ karim79 এর answer জরিমানা কাজ করে। আমি এটা পরীক্ষার সময় আমি কি মিস ছিল তা নিশ্চিত নই।

নোট, এই উত্তরটি জাভাস্ক্রিপ্ট নয়, মাইক্রোসফ্ট অ্যাজাক্স ব্যবহার করে




jQuery 1.6+

$('#isAgeSelected').prop('checked')

jQuery 1.5 এবং নিচে

$('#isAgeSelected').attr('checked')

JQuery এর কোন সংস্করণ

// Assuming an event handler on a checkbox
if (this.checked)

সমস্ত ক্রেডিট Xian যায়।




চেকবক্স সম্পত্তিটির জন্য Click ইভেন্ট হ্যান্ডলারটি ব্যবহার করা অবিশ্বস্ত, কারণ checked সম্পত্তি ইভেন্ট হ্যান্ডলার নিজেই কার্যকর হওয়ার সময় পরিবর্তন করতে পারে!

আদর্শভাবে, আপনি আপনার কোডটিকে change ইভেন্ট হ্যান্ডলারের মধ্যে রাখতে change যেমন এটি চেক বক্সের মান পরিবর্তিত হওয়ার সময় প্রতিটি সময় বহিস্কার করা হয় (এটি কীভাবে করা হয় তার থেকে স্বাধীন)।

$('#isAgeSelected').bind('change', function () {

   if ($(this).is(':checked'))
     $("#txtAge").show();
   else
     $("#txtAge").hide();
});



যদিও আপনি আপনার সমস্যার জন্য একটি জাভাস্ক্রিপ্ট সমাধান প্রস্তাব করেছেন (একটি checkbox checked সময় একটি textbox প্রদর্শন checked ), তবে এই সমস্যাটি কেবল CSS দ্বারা সমাধান করা যেতে পারে। এই পদ্ধতির সাথে, আপনার ফর্মটি ব্যবহারকারীদের জন্য জাভাস্ক্রিপ্ট নিষ্ক্রিয় করেছে।

আপনি নিম্নলিখিত এইচটিএমএল আছে অনুমান:

<label for="show_textbox">Show Textbox</label>
<input id="show_textbox" type="checkbox" />
<input type="text" />

আপনি পছন্দসই কার্যকারিতা অর্জন করতে নিম্নলিখিত সিএসএস ব্যবহার করতে পারেন:

 #show_textbox:not(:checked) + input[type=text] {display:none;}

অন্যান্য পরিস্থিতিতে, আপনি উপযুক্ত সিএসএস নির্বাচকদের মনে করতে পারেন।

এখানে এই পদ্ধতি প্রদর্শন করা একটি fiddle হয়




if($("#checkkBoxId").is(':checked')){
  alert("Checked=true");
}

অথবা

if($("#checkkBoxId").attr('checked') == true){
  alert("checked=true");
}



একটি চেকবক্স চেক করা আছে কিনা তা চেক করার জন্য অনেক উপায় আছে:

JQuery ব্যবহার করে চেক করার উপায়

if (elem.checked)
if ($(elem).prop("checked"))
if ($(elem).is(":checked"))
if ($(elem).attr('checked'))

উদাহরণ বা নথি পরীক্ষা করুন:




আমি এই ব্যবহার করছি এবং এটি একেবারে সূক্ষ্ম কাজ করছে:

$("#checkkBoxId").attr("checked") ? alert("Checked") : alert("Unchecked");

দ্রষ্টব্য: যদি চেকবক্সটি চেক করা হয় তবে এটি অন্যথায় অনির্ধারিত সত্য ফিরে আসবে, তাই "সত্য" মানটির জন্য আরও ভালোভাবে পরীক্ষা করুন।




আপনি যদি jquery এর একটি আপডেট হওয়া সংস্করণ ব্যবহার করেন তবে আপনার সমস্যার সমাধান করতে অবশ্যই .prop পদ্ধতিতে যেতে হবে:

$('#isAgeSelected').prop('checked') চেক করা হলে চেক করা হবে এবং চেক true হলে চেক করা হবে। আমি এটা নিশ্চিত এবং আমি আগে এই সমস্যা জুড়ে এসেছিলেন। $('#isAgeSelected').attr('checked') এবং $('#isAgeSelected').is('checked') undefined ফিরে যা পরিস্থিতিটির জন্য উপযুক্ত উত্তর নয়। তাই নিচে দেওয়া হিসাবে।

if($('#isAgeSelected').prop('checked')) {
    $("#txtAge").show();
} else {
    $("#txtAge").hide();
}

এটা সাহায্য করে আশা করি:) - ধন্যবাদ।




এটি আমার জন্য কাজ করে:

/* isAgeSelected being id for checkbox */

$("#isAgeSelected").click(function(){
  $(this).is(':checked') ? $("#txtAge").show() : $("#txtAge").hide();
});



এটা করার আমার উপায় হল:

if ( $("#checkbox:checked").length ) {       
    alert("checkbox is checked");
} else {
    alert("checkbox is not checked");
}



$(document).ready(function() {    
    $('#agecheckbox').click(function() {
        if($(this).is(":checked"))
        {
            $('#agetextbox').show();
        } else {
            $('#agetextbox').hide();
        }
    });
});



তুমি ব্যবহার করতে পার:

  if(document.getElementById('isAgeSelected').checked)
    $("#txtAge").show();  
  else
    $("#txtAge").hide();
if($("#isAgeSelected").is(':checked'))
  $("#txtAge").show();  
else
  $("#txtAge").hide();

তাদের উভয় কাজ করা উচিত।




আমি সঠিক একই সমস্যা দৌড়ে। আমি একটি ASP.NET চেকবক্স আছে

<asp:CheckBox ID="chkBox1" CssClass='cssChkBox1' runat="server" />

JQuery কোডে আমি চেকবক্সটি চেক করা হয়েছে কিনা তা পরীক্ষা করতে নিম্নলিখিত নির্বাচক ব্যবহার করেছি এবং এটি একটি যাদুমন্ত্রের মতো কাজ বলে মনে হচ্ছে।

if ($("'.cssChkBox1 input[type=checkbox]'").is(':checked'))
{ ... } else { ... }

আমি নিশ্চিত যে আপনি CssClass এর পরিবর্তে আইডি ব্যবহার করতে পারেন,

if ($("'#cssChkBox1 input[type=checkbox]'").is(':checked'))
{ ... } else { ... }

এটি তোমাকে সাহায্য করবে বলে আশা করি।




আমি jQuery ছাড়া যে সঠিক একই জিনিস কিভাবে একটি উত্তর পোস্ট করার সিদ্ধান্ত নিয়েছে। শুধু কারণ আমি একটি বিদ্রোহী।

var ageCheckbox = document.getElementById('isAgeSelected');
var ageInput = document.getElementById('txtAge');

// Just because of IE <333
ageCheckbox.onchange = function() {
    // Check if the checkbox is checked, and show/hide the text field.
    ageInput.hidden = this.checked ? false : true;
};

প্রথমে আপনি তাদের আইডি দ্বারা উপাদান উভয় পেতে। তারপরে আপনি চেকবক্সের onchange ইভেন্টটি একটি ফাংশন বরাদ্দ করুন যা চেকবক্সটি চেক করে কিনা তা পরীক্ষা করে এবং উপযুক্তভাবে বয়স পাঠ্য ক্ষেত্রের hidden সম্পত্তি সেট করে। ত্রিনিরি অপারেটর ব্যবহার করে যে উদাহরণ।

আপনি এটি পরীক্ষা করার জন্য এখানে একটি fiddle

অভিযোজ্য বস্তু

যদি ক্রস ব্রাউজারের সামঞ্জস্য একটি সমস্যা হয় তবে আমি সিএসএস display সম্পত্তি সেটিকে কেউ এবং ইনলাইনে সেট করার প্রস্তাব করি।

elem.style.display = this.checked ? 'inline' : 'none';

ধীর কিন্তু ক্রস ব্রাউজার সামঞ্জস্যপূর্ণ।




JQuery 1.6 থেকে, jQuery.attr() এর আচরণ পরিবর্তিত হয়েছে এবং ব্যবহারকারীদের একটি উপাদান এর চেক হওয়া অবস্থায় পুনরুদ্ধার করতে এটি ব্যবহার না করার পরামর্শ দেওয়া হয়। পরিবর্তে, আপনি jQuery.prop() ব্যবহার করা উচিত:

$("#txtAge").toggle(
    $("#isAgeSelected").prop("checked") // For checked attribute it returns true/false;
                                        // Return value changes with checkbox state
);

দুটি অন্যান্য সম্ভাবনার হয়:

$("#txtAge").get(0).checked
$("#txtAge").is(":checked")



টগল করুন: 0/1 অথবা অন্যথায়

<input type="checkbox" id="nolunch" />
<input id="checklunch />"

    $('#nolunch').change(function () {
    if ($(this).is(':checked')) {
        $('#checklunch').val('1');
    };
    if ($(this).is(':checked') == false) {
        $('#checklunch').val('0');
    };
});



আমি বিশ্বাস করি তুমি এটা করতে পারো

if ($('#isAgeSelected :checked').size() > 0)
{
    $("#txtAge").show(); 
} else { 
    $("#txtAge").hide();
}



JQuery 1.6+ জন্য

$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);

JQuery 1.5.x এবং নীচের জন্য

$('.myCheckbox').attr('checked', true);
$('.myCheckbox').attr('checked', false);

চেক করতে,

$('.myCheckbox').removeAttr('checked');




jquery html dom checkbox