使用Jquery Mobile 1.3.2检查和取消选中单选按钮

时间:2013-10-01 08:05:02

标签: jquery jquery-mobile

我尝试使用Jquery Mobile 1.3.2重现this example,但它仅适用于1.2.1或更低版本。

    $(document).on("pageinit", "#page1", function(){

        $("#checkFirst").click(function(){
            $("input[type='radio']:first").attr("checked", "checked");
            $("input[type='radio']").checkboxradio("refresh");
        });
        $("#checkSecond").click(function(){
            $("input[type='radio']:eq(1)").attr("checked", "checked");
            $("input[type='radio']").checkboxradio("refresh");
        });
        $("#checkLast").click(function(){
            $("input[type='radio']:last").attr("checked", "checked");
            $("input[type='radio']").checkboxradio("refresh");
        });
        $("#uncheckAll").click(function(){
            $("input[type='radio'][checked]").removeAttr("checked");
            $("input[type='radio']").checkboxradio("refresh");
        });
    });

此函数仅对jqm中的一个radiobutton第一次重绘单选按钮> 1.2.1

这链接到jsfiddle:

Works version with 1.2.1
Don't works version with 1.3.2

为什么这个例子不适用于其他版本的任何想法?

2 个答案:

答案 0 :(得分:1)

使用.prop()代替.attr()

//to check
$("input[type='radio']:first").prop("checked", true);
//to uncheck
$("input[type='radio']:first").prop("checked", false);

阅读:Properties Vs Attributes

答案 1 :(得分:0)

使用.prop()代替.attr()

$("input[type='radio']:first").prop("checked", true);

阅读.prop() vs .attr()