About liangyongfei

该作者尚未填入任何详情
So far liangyongfei has created 485 blog entries.

关于data组件查找符合条件的数据

1.前台查询,使用data.find方法查找,例如: //查找fName中包含"李"的提一条数据 var rows = this.comp('mainData').find(['fName'],['李'],true,true,true); if(rows.length==0) alert('没有符合条件数据'); //查找fName="李四",fAge=18的数据 var rows = this.comp('mainData').find(['fName','fAge'],['李',18]); if(rows.length==0) alert('没有符合条件数据'); 查找到某行数据后,可以使用data.to(row) 切换到哪一行,当前行显示就可以改变了 2.后端查询,往往使用data.setFilter()方法实现,比如: var data=this.comp('dataXid'); data.setFilter('filter1',"ID='值'"); data.refreshData() 如果是list组件列表页刷新可以这样写: var data=this.comp('dataXid'); var list=this.comp('listXid'); data.setFilter('filter1',"ID='值'"); list.refresh(true);//list组件的refresh方法带上参数true,表示刷新list同时刷新它所绑定的data组件! [...]

input显示为日期组件,设置日期选择的范围

原因:input组件显示为日期类型时!想设置只能选择某个时间段以内的日期 解决方法: 3.5版本,input 组件有两个属性: min 和 max 可以选择设置!目前只能选择今天 还可以通过绑定js方法!返回指定日期!比如min或max设置为:$model.test() 然后,js中自定义方法: Model.prototype.test = function() { var date1=new Date(); date1.setDate(5); return date1; };    

java服务器baasServer 跨域访问设置

原因:如果想实现baasServer 不页面分开部署,或者访问多个不同服务器的baasServer,就需要设置可以跨域访问 解决方法: 跨域设置BaasServer\WEB-INF\web.xml      <init-param>        <param-name>Access-Control-Allow-Origin</param-name>        <param-value>*</param-value>      </init-param> js访问的时候可以直接使用平台baas就可以了! 不过调用Baas.sendRequest  以前 先设置一个变量参数 Baas.BASE_URL等于你的服务地址,比如justep.Baas.BASE_URL = http://ip:端口/baas;  

苹果APP头部重叠问题

原因:ios系统手机显示APP的时候会有和手机状态了重合的情况! 解决方案: panel组件上设置class属性x-has-iosstatusbar 参考:/UI2/demo/taobao/list.w /*                 判断html标签是否有iosstatusbar,有测表示在苹果手机上运行,顶部需要留出20px,因此修改popover的top                 */                 var src=$("html").hasClass("iosstatusbar");   [...]

自定义ajax获取后台数据并实现分页显示!

1.data组件设置limit属性,表示每次加载几条数据,自己在data组件的onCustomRefresh事件中接管自定义加载数据 ,关于自定义onCustomRefresh 事件的案例可以参考:/UI2/demo/acc_data/list.js 2.后台返回的数据格式如:http://doc.wex5.com/?p=4932  其中sys.count表示总行数!,第一次必须返回这个! 例如:后台java给table对象设置总数代码: table.setTotal(100) 3.或者直接在前端,使用Data.setTotal()设置总条数! 增量加载数据的情况下,当前data中条数小于这个总数时!list下拉或会触发onCustomRefresh并重新请求后台数据!获得下一页! 可参考:http://bbs.wex5.com/forum.php?mod=viewthread&tid=94661   4.如果不是增量加载,loadData方法中指定append为false  时,当data组件offset 的值大于等于data.getTotal() 时,就不会触发加载下一页了!  

在APP中使用浏览器打开网站

原因:WeX5开发的APP往往是单页应用!这也是官方推荐的开发方式!如果再APP中想显示外网其他网站的一个页面,可以使用iframe标签设置! http://docs.wex5.com/wex5-ui-question-list-2152/ 但是如果这个网址中有页面跳转!就会导致打开的页面脱离单页应用APP,不利于APP的管理操作!所以,当APP中想打开一个网站跳转显示时,建议使用浏览器来打开! 解决方法 1.window.open(你打开的Url?参数,'_system'); 参数“_system”就是表示使用系统浏览器打开这个url地址! 2.使用插件,在内部浏览器中打开,参考插件文档: /Native/plugins/cordova-plugin-inappbrowser/plugin.js.xdoc /Native/plugins/cordova-plugin-inappbrowser/README.md http://docs.wex5.com/wex5-app-question-list-2099 var ref = cordova.InAppBrowser.open('http://apache.org', '_blank', 'location=yes');