Heim  >  Artikel  >  Web-Frontend  >  jquerymobile局部渲染的各种刷新_html/css_WEB-ITnose

jquerymobile局部渲染的各种刷新_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 12:03:101245Durchsuche

   在JQueryMobile页面在第一次初始化进行一次整体渲染,动态生成的需要局部渲染。

在jquerymobile实现listview局部渲染的方法:

Java代码  

  1. function queryPublishOrderList(trackOrDealOrInsp,userCode,type,pageNum){  
  2.     var queryPublishOrderListURL="http://xxx.xxx.xxx.xxx/Myapp/WorkOrderSelByTypeService.svc/WorkOrderSimpSelByType/Json/"+trackOrDealOrInsp+"/"+userCode+"/"+type+"/"+pageNum;  
  3.     $.ajax({  
  4.         type: 'get',  
  5.         dataType : "json",  
  6.         url: queryPublishOrderListURL,  
  7.         contentType: 'application/json',  
  8.         data: [],  
  9.         success: function(data) {  
  10.               var sb = new StringBuffer();   
  11.               $.each(data, function(i,item){  
  12.                  //创建一个工单列表行对象  
  13.                 sb.append("
      ");  
  14.                 sb.append("
  15.  "+item.work_orders_id+""+i+"
  16. ");  
  17.                 sb.append("
  18. ");  
  19.                 sb.append("
    "+item.work_orders_id+"
    ");  
  20.                 sb.append("
    "+item.founder_na+"
    ");  
  21.                 sb.append("
    "+item.found_time+"
    ");  
  22.                 sb.append("
    "+item.type_na+"jquerymobile局部渲染的各种刷新_html/css_WEB-ITnose
    ");  
  23.                 sb.append("
    "+item.work_cont+"
    ");  
  24.                 sb.append("
  25. ");  
  26.                 sb.append("");  
  27.               });  
  28.               var content = sb.toString();   
  29.                  $("#queryList").html(content);  
  30.         },  
  31.         error:function(XMLHttpRequest, textStatus, errorThrown){  
  32.                 alert("请求远程服务错误!");  
  33.         },  
  34.         complete: function() {      
  35.               $("div[data-role=content] ul").listview();            
  36.         }    
  37.     });  
  38. }  

  备注:

  listview针对jquerymobile针对listview组件刷新。

 

    $("div[data-role=content] ul").listview();   

如果想针对listview内部的li刷新可以使用

   $("div[data-role=content] ul li").listview("refresh");

否则报错误如下:

jquerymobile listviewcannot call methods on listview prior to initialization; attempted to call method 'refresh'

 

jquerymobile checkbox及时刷新才能获取其准确值

 

Java代码  

  1. 一般登录的时候 都有个记住用户名 记住密码 的两个checkbox 多选框  
  2.   
  3. 用jquerymobile 做页面 ,当勾选checkbox 时总是不能获取它正确的值。  
  4.   
  5. 解决办法:    
  6.   
  7. $('input[type="checkbox"]').bind('click',function() {  
  8.        $(this).prop('checked').checkboxradio("refresh");   // 绑定事件及时更新checkbox的checked值  
  9.   });  
  10.   
  11. 如果要用js去改变checkbox的值时也要及时刷新。   
  12.   
  13. $('input [type="checkbox"]').attr('checked',false).checkboxradio("refresh");  
  14.   
  15. $('input [type="checkbox"]').attr('checked',false).checkboxradio("refresh");   
  16.   
  17. 原因: 因为手动改变它的值后,jquerymobile不能重新渲染。 这样页面显示的值和实际值就不一样了。 (jquerymobile 把form表单元素都隐藏起来,然后用 js添加了一些元素易于美化input, select ,textarea 等元素的效果)  
  

下拉框刷新

Java代码  

  1. $("#selectbox").html(optionList).selectmenu('refresh', true);  

 

 

Java代码  

  1. 复选按钮  
  2. $("input[type='checkbox']").attr("checked",true).checkboxradio("refresh");  
  3.    
  4. 单选按钮组:  
  5. $("input[type='radio']").attr("checked",true).checkboxradio("refresh");  
  6.    
  7. 选择列表::  
  8. var myselect = $("select#foo");  
  9. myselect[0].selectedIndex = 3;  
  10. myselect.selectmenu("refresh");   
  11.    
  12. 滑动条  
  13. $("input[type=range]").val(60).slider("refresh");  
  14.    
  15. 开关 (they use slider):  
  16. var myswitch = $("select#bar");  
  17. myswitch[0].selectedIndex = 1;  
  18. myswitch .slider("refresh");  
 

select 禁用样式

button禁用样式

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn