jqueryMobile checkbox选择后,无法取得值的问题.已解决

                 按照官方文档(jqueryMobile.1.3.0)所说,拿到关于多选按钮的代码为

            

< fieldset data-role = "controlgroup" data-type = "horizontal" data-mini = "true" >
     < legend >Checkboxes, mini, horizontal controlgroup: legend >
     < input type = "checkbox" name = "checkbox-6" id = "checkbox-6" >
     < label for = "checkbox-6" >b label >
     < input type = "checkbox" name = "checkbox-7" id = "checkbox-7" checked = "" >
     < label for = "checkbox-7" >< em >i em > label >
     < input type = "checkbox" name = "checkbox-8" id = "checkbox-8" >
     < label for = "checkbox-8" >u label >
fieldset >
/*
如上所示,通常页面,我经常用jquery.attr("checked")的属性判断是否为选中状态。可是,进过jqueryMobile的框架渲染后,这个checked的属性只是为了一个皮肤效果,并没有实际选中,可以通过chrome浏览器查看。
网上百度谷歌了一下,发现有个帖子采用,这个方法。
$( 'input[type="checkbox"]' ).bind( 'click' , function () {
$( this ).prop( 'checked' ).checkboxradio( "refresh" );  // 绑定事件及时更新checkbox的checked值
});
可能版本变化的原因,我这里显示没有checkboxradio这个属性。
 
看radio单属性的api文档,发现有val这个属性,抱着试一试的态度,果然就是它
所以解决办法就是,
可以通过添加val='on'属性,然后用$(this).val('off');进行变化,从而获得点击状态。  
*/

你可能感兴趣的:(jqueryMobile)