2012-11-15 196 views
1

我试图改变我的状态jqueryMOBILE复选框。我使用下面的代码来改变状态。复选框刷新不起作用

$('#_inputcb_Q801').prop('checked', false); 

我找到了一个解决方案,不适合我。 我在jquerymobile上找到了解决方案,下面的代码就是我试过的,但是它给出了一个错误。

$('#_inputcb_Q801').prop('checked', false).checkboxradio('refresh'); 

这是错误: 运行时错误Microsoft JScript中的:不能调用到初始化checkboxradio现有技术方法;试图调用方法'刷新'

我该如何解决这个问题?

+1

该错误消息似乎还指示问题。在插件绑定到元素'$('#_ inputcb_Q801')。checkbox()'之前,最有可能类似于调用刷新。只需确保在初始化元素上的插件之前不调用刷新。 – Bogdan

回答

-1

试试这个

$('#_inputcb_Q801').attr('checked', false); 
+0

感谢您的答复,它的工作原理,但它并没有更新用户视图,在代码中未选中,但用户仍然看到复选框被选中。 – user1652050

+0

我认为它也会更新视图。试试吧 $('#_ inputcb_Q801')。change(); –

+1

也不工作,它看起来像GUI没有更新或某些..... – user1652050

0

找到了解决办法,生病后它低于它可能会帮助别人:

$('#_bQ801').click(function(){ 
     $.mobile.changePage('#Question_09_01', 'slide', false, false); 
     $('#_inputcb_Q901').attr('checked', false); 
     $('#_inputcb_Q901').checkboxradio('refresh');} 
+0

改进:删除点击处理程序,删除$ .mobile ...只需要最后两条语句。 – Zim84

2

尝试。

  • 复选框

    $('.ui-checkbox input').attr('checked', false).checkboxradio('refresh');

  • 选择框

    $('.ui-select select').val('').selectmenu('refresh');