JQuery ইউনিফর্ম লাইব্রেরি ব্যবহার করে কীভাবে চেকবক্সটি চেকবাক্স থেকে চেকবাক্সটি চেকবাক্স থেকে মুক্ত করা যায়


144

আনচেক করা নিয়ে আমার সমস্যা আছে checkboxআমার জেএসফিডালটি একবার দেখুন , আমি যেখানে চেষ্টা করছি:

   $("#check2").attr("checked", true);

আমি ব্যবহার অভিন্ন styling জন্য checkboxএবং এটি কেবল করার কাজ করে না পরীক্ষা / আনচেকcheckbox

কোন ধারনা?


গুগল ক্রোম এবং ফায়ারফক্স উভয় ক্ষেত্রেই এটি আমার পক্ষে কাজ করে না
উপভোট করুন

উত্তর:


108

তাদের দস্তাবেজগুলি দেখে, তাদের কাছে $.uniform.updateএকটি "ইউনিফর্মযুক্ত" উপাদানটি রিফ্রেশ করার বৈশিষ্ট্য রয়েছে।

উদাহরণ: http://jsfiddle.net/r87NH/4/

$("input:checkbox").uniform();

$("body").on("click", "#check1", function () {
    var two = $("#check2").attr("checked", this.checked);
    $.uniform.update(two);
});

5
@ এমকোরিয়াক: ভাল কাজ করে 1.4.4, তবে জেএস এবং সিএসএস ফাইলগুলির লিঙ্কগুলি নষ্ট হয়ে গেছে। এখানে একটি আপডেট করা ফিজল। যদি আপনি বোঝাতে চেয়ে থাকেন যে এতে বিশেষত সমস্যা থাকবে 1.6তবে জিকুয়েরি পরিবর্তিত হওয়ার পরে এটি সম্ভবত সত্য .attr()। ব্যবহার 1.6বা উচ্চতর, আপনার সত্যই ব্যবহার করা উচিত .prop()
ব্যবহারকারী 113716

আপডেট করা জেএসফিডাল এবং মূল (চেকবক্স 2 এর বিভ্রান্তিকর নীচে ঠিক নীচে) এর মধ্যে আমি একেবারেই কোনও তফাত দেখতে পাচ্ছি না, আপডেট সংস্করণটি আমার পক্ষে কাজ করে এবং মূলটি কি না!!?!
আইপ্যাডডিফলার ২০১১

বিটিডাব্লু এই সমস্ত পিক্সেল-টানা ইউনিফর্ম ফর্মগুলি রেটিনার উপর খুব আনসেক্সি দেখায় ।
দেহধারী

আমার জন্যও কাজ করেননি জিসফিল কাজ করে না বা বিভ্রান্ত করছে
ম্যাথি

367

একটি সহজ সমাধানটি ইউনিফর্ম ব্যবহার না করে এটি করা:

$('#check1').prop('checked', true); // will check the checkbox with id check1
$('#check1').prop('checked', false); // will uncheck the checkbox with id check1

এটি সংজ্ঞায়িত কোনও ক্লিক ক্রিয়াকে ট্রিগার করবে না।

আপনি এটি ব্যবহার করতে পারেন:

$('#check1').click(); // 

এটি চেকবক্সের জন্য চেক / আনচেকটি টগল করবে তবে এটি আপনার সংজ্ঞায়িত যে কোনও ক্লিক ক্রিয়াকেও ট্রিগার করবে। তাই সতর্কতা অবলম্বন করা.

সম্পাদনা : jQuery 1.6+ চেকবাক্স চেক করা মানের জন্য prop()নয়attr()


2
এটি আমার জন্য jQuery 1.7.1 এ যাচাই করা বিশিষ্টটিকে ছেড়ে দেয়। কাজ করে তবে আপনার যা মনে করা উচিত তা করে না।
2rs2ts

24
$("#chkBox").attr('checked', false); 

এটি আমার পক্ষে কাজ করেছে, এটি চেক বাক্সটি নির্বাচন করে ছাড়বে। একইভাবে আমরা ব্যবহার করতে পারি

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

চেকবাক্স চেক করতে।


4
আমি মনে করি .attr () এর পরিবর্তে .prop () ফাংশনটি ব্যবহার করা ভাল। অন্যথায় এটি সর্বদা প্রত্যাশিতভাবে কাজ করবে না ...
সাইমন স্টেইনবার্গার

13

যদি আপনি 1.5 ইউনিফর্ম ব্যবহার করে থাকেন তবে চেকের বৈশিষ্ট্য যুক্ত করতে বা সরাতে এই সহজ কৌশলটি ব্যবহার করুন
আপনার চেকবক্সের ইনপুট ক্ষেত্রে কেবলমাত্র মান = "চেক" যুক্ত করুন।
এই কোড যোগ করুন uniform.js> function doCheckbox(elem){>.click(function(){

if ( $(elem+':checked').val() == 'check' ) {
    $(elem).attr('checked','checked');           
}
else {
    $(elem).removeAttr('checked');
}   

আপনি যদি নিজের ইনপুট বাক্সে মান = "চেক" যুক্ত করতে না চান তবে কিছু ক্ষেত্রে আপনি দুটি চেকবক্স যুক্ত করেন তাই এটি ব্যবহার করুন

if ($(elem).is(':checked')) {
 $(elem).attr('checked','checked');
}    
else
{    
 $(elem).removeAttr('checked');
}

আপনি যদি ইউনিফর্ম ২.০ ব্যবহার করে থাকেন তবে
এই classUpdateChecked($tag, $el, options) {ফাংশন পরিবর্তনে চেকের বৈশিষ্ট্য যুক্ত বা সরাতে এই সহজ কৌশলটি ব্যবহার করুন

if ($el.prop) {
    // jQuery 1.6+
    $el.prop(c, isChecked);
}

প্রতি

if ($el.prop) {
    // jQuery 1.6+
    $el.prop(c, isChecked);
    if (isChecked) {
        $el.attr(c, c);
    } else {
        $el.removeAttr(c);
    }

}

7
$('#check1').prop('checked', true).uniform(); 
$('#check1').prop('checked', false).uniform(); 

এটি আমার পক্ষে কাজ করেছে।


আপনাকে অনেক ধন্যবাদ. আমি নিশ্চিত করতে পারি যে এটি সবচেয়ে সহজ সমাধান।
রুডল্ফ অপারম্যান

2

শুধু এটি করুন:

$('#checkbox').prop('checked',true).uniform('refresh');

1

$.uniform.update()ডকুমেন্টেশনে উল্লিখিত হিসাবে আপনি জাভাস্ক্রিপ্ট ব্যবহার করে উপাদান আপডেট করে থাকলে আপনাকে কল করতে হবে।


1

প্রথমত, এর checkedমান checkedবা একটি খালি স্ট্রিং থাকতে পারে।

$("input:checkbox").uniform();

$('#check1').live('click', function() {
    $('#check2').attr('checked', 'checked').uniform();
});

বুলিয়ান এর মান হিসাবে পাস করার সাথে কোনও ভুল নেই checked
ব্যবহারকারী 113716

তবে আমরা এইচটিএমএল মার্কআপ লিখছি না। আমরা একটি সম্পত্তি সেট করছি HTMLInputElement। কটাক্ষপাত আছে checkedসম্পত্তি।
ব্যবহারকারী 113716

কিছু মনে করবেন না ... আমি কেন সত্যিই বুঝতে পারি না কেন এটি অবৈধ,
nyuszika7h

একটি বুলিয়ান মান পাস করা কেবলমাত্র 1.6+ এ সমর্থিত, এর আগে আপনাকে চেক করা বৈশিষ্ট্যটি 'চেকড' করতে বা এটি অপসারণ করতে হয়েছিল।
mkoryak

1

কিছু ক্ষেত্রে আপনি এটি ব্যবহার করতে পারেন:

$('.myInput').get(0).checked = true

টগল করার জন্য আপনি যদি অন্য কোনও ক্রিয়া সহ ব্যবহার করতে পারেন


1

 $("#checkall").change(function () {
            var checked = $(this).is(':checked');
            if (checked) {
                $(".custom-checkbox").each(function () {
                    $(this).prop("checked", true).uniform();
                });
            } else {
                $(".custom-checkbox").each(function () {
                    $(this).prop("checked", false).uniform();
                });
            }
        });

        // Changing state of CheckAll custom-checkbox
        $(".custom-checkbox").click(function () {
            if ($(".custom-checkbox").length == $(".custom-checkbox:checked").length) {
                $("#chk-all").prop("checked", true).uniform();
            } else {
                $("#chk-all").removeAttr("checked").uniform();
            }
        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id='checkall' /> Select All<br/>
 <input type="checkbox" class='custom-checkbox' name="languages" value="PHP"> PHP<br/>
 <input type="checkbox" class='custom-checkbox' name="languages" value="AngularJS"> AngularJS<br/>
 <input type="checkbox" class='custom-checkbox' name="languages" value="Python"> Python<br/>
 <input type="checkbox" class='custom-checkbox' name="languages" value="Java"> Java<br/>


0

করার অন্য উপায়টি হ'ল,

ব্যবহার $('#check2').click();

এটি চেকবাক্সটি চেক করে ইউনিফর্ম তৈরি করে এবং এটি মাস্কগুলি আপডেট করে


-1

চেকবক্স যা রেডিও বিটিএন এর মতো কাজ করে

$(".checkgroup").live('change',function() { var previous=this.checked; $(".checkgroup).attr("checked", false); $(this).attr("checked", previous); });

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