party_bid 的第二张卡和第三张卡都涉及到接受信息和回复信息,并对收到的信息进行处理。这里我把两张卡合并起来一起总结。
1.首先是对接收到的信息进行处理,信息分为报名和竞价,报名是以“bm”开头的信息,竞价是“jj”开头。我们要处理的主要是它们后面的信息。这里需要用到正则表达式:
var message = json_message.messages[0].message.replace(/\s/g, ""); message.search(/jj/i) message.substr(2)
讲讲这三个语句的意思。
replace()和search()是String支持4种使用正则表达式方法的两种,replace()方法用以执行检索与替换操作,search()用来执行检索。
例如:text.replace(/javascript/gi,"JavaScript"); //将text中所有不区分大小写的javascipt替换为大小写正确的JavaScript。
在正则表达式中”\s“是任何Unicode空白符的意思(这里注意一下大小写,”\S“是任何非Unicode空白符的字符),“/g”则是全局的意思,所以json_message.messages[0].message.replace(/\s/g, "")是将message中的所有空格都替换成空字符串,也就是去除空格的意思,为什么要去除空格呢?这都是为下一句判断做准备。
先来看一下下面语句:
"javascript".search(/script/i) //这个语句的返回值为4 "bm".search(/bm/i) //这个语句的返回值为0 "ddBmdd".search(/bm/i) //这个语句的返回值为2 "ddbdm".search(/bm/i) //这个语句的返回值为-1
看到这里应该懂了,search()可以返回找到字符串前面字符的个数,如果找不到则会返回-1,经过replace()后,获取的信息所有的空格都去除了,所以返回值肯定是0,用这个语句进行判断是否是报名短信。
最后是substr(),这里的message.substr(2)是去除message的前两位,也就是为了处理短信,去除bm获取后面的人名。
2.在讲信息显示前,这里先说一下关于$scope。
$scope是一个把html连接到javaScrip上的对象。在$scope对象里,我们可以存储数据,也可以存储在html上运行的函数。这里也可以看一下$scope里存储的东西,
console.log($scope); //将$scope里的内容打印出来
我们可以利用$scope实现两者之间的信息传递。
我们可以在js中写入$scope.name = "moneyinto"
然后在对应的html中任何地方可以访问name,通过表达式{{}},(这就是数据的绑定)
写成这样{{name}}
这样我们的页面上就会显示 moneyinto
3.接着是对处理完的信息进行显示,和计数,通常我们接受到信息处理后,页面上显示的信息没有增加,其实已经有了刚处理完的信息,可以通过console.log();打印出来看看。这时手动刷新一下页面信息便可以显示出来,但是总不能让用户一直手动刷新吧,这里我们需要用到$apply()将代码包起来。
先看一段代码:
<div ng:app ng-controller="Ctrl">{{message}}</div>
functionCtrl($scope) { $scope.message ="hello world!"; setTimeout(function () { $scope.message ="moneyinto"; }, 3000); }
执行上面的代码后,页面会显示“hello world!”,
然后3秒之后,message的值发生变化,按理说这时页面上应该显示“moneyinto”,
执行console.log(message);也会发现message的值已经变化了,
但是实际情况是页面上还是显示的“hello world!”。
angular JS没有觉察到数据的更新。
这里就需要用$apply将上面的代码包起来:
functionCtrl($scope) { $scope.message ="hello world!"; setTimeout(function () { $scope.$apply(function () { $scope.message ="moneyinto"; }); }, 3000); }
这样页面上会显示“hello world!”,三秒之后会显示“moneyinto”,数据的更新被angular JS觉察到了。
接下来看一下报名信息存储后的一段代码:
var signUp = document.getElementById("signUp"); //获取报名页面的id if (signUp) { var scope = angular.element(signUp).scope(); //通过id找到对应的页面获取$scope scope.$apply(function () { //使用$apply()将报名页面的refresh方法包起来 scope.refresh(); }); }
在报名页面对应的js文件中写好refresh()的方法,这样每当我们在接受到信息处理完存储到本地的话就会调用以下refresh()执行一遍,这样页面的数据就会自动及时更新了。
4.ng常用小结
重复:ng-repeat
<div> <ul> <li ng-repeat = "activity in activities"> <h2>{{activity.name}}</h2> </li> </ul> </div>
var activities = [{"name":1},{"name":2},{"name":3}]; $scope.activities = activities;通常我们需要将一组重复的数据逐条显示在页面上时,会用到ng-repeat,如上进行数据绑定,然后通过$scope传值,将数组的值显示到页面。
相关推荐
数据格式 uid_score_bid 如 dingdanglbh,4.0 ,25862578 Luna-cat,5.0 ,25862578 aiyung,5.0 ,25862578
标题中的"case9_bid.rar_PSO_PSO power_PSO 潮流_case9_pso power flow"揭示了这个压缩包文件包含的是一个关于电力系统潮流计算的案例,使用了粒子群优化(PSO, Particle Swarm Optimization)算法。PSO是一种基于...
在计算CRC时,数据被看作是二进制多项式的系数,与生成多项式进行模2除法运算。生成多项式G(x)决定了CRC码的长度和特性,这里的G(x)有16位,所以产生的CRC校验和也是16位。 CRC-16 CCITT的计算过程可以分为以下步骤...
欧美1分钟历史数据,2003年5月到2019年2月,MT4EA回测好用。
该招标项目前端设计源码采用JavaScript编写,包含280个文件,涵盖177个JavaScript文件、26个CSS文件、24个HTML文件、22个Java文件以及少量地图、JSON、图像、XML等文件。整个项目旨在打造一个功能完善、界面美观的...
"mc_bid"通常在IT行业中指的是“Multi-Channel Bid”,这是一种广告投放策略,特别是在数字营销领域,用于优化广告在多个渠道上的出价。这个概念主要应用于程序化广告(Programmatic Advertising),通过自动化的...
标题 "Repaso_Clases_Objetos_call_aplly_bid_22_02_2021" 暗示这是一个关于回顾类与对象、`call` 和 `apply` 方法以及可能涉及到的 JavaScript 语言特性的教程或复习资料。描述部分的信息较为简单,与标题相同,...
去噪代码 matlab
bid0-lid0-steam游戏管家_steambdth01_1.0.0.1487@1prw2r@gog.exe
bid0-lid64-steam.game_steamzc9_2.0.0.2702.exe.file
总结起来,这个“backup_1000821v1001400000.zip”压缩包可能包含了一个陌陌应用或系统的备份数据,其中`verify.json`和`config.json`文件提供了备份验证和应用配置信息,而`verify.sign`和`verify.signature`则保证...
【标题】"Bid Documents - Toyota Hilux Fx_pdf_" 暗示了这是一个与丰田Hilux FX车型相关的招标文件,格式为PDF。在IT领域,PDF(Portable Document Format)是一种广泛使用的文档格式,用于保存内容,确保在不同...
标题“bid_shift_reg.rar_plus”暗示我们关注的焦点是一个与数字电路设计相关的项目,特别是使用VHDL(Very High-Speed Integrated Circuit Hardware Description Language)编写的双向移位寄存器。在电子工程领域,...
bid0-lid64-steam.game_steamzc_2.0.0.2242.exe
出价统计信息和详细信息 作为签约过程一部分而...bids.details数组用于提供一个或多个Bid对象,每个对象代表收到的唯一出价。 bids.statistics数组用于表示有关投标和投标者数量的关键统计信息。 数组中的每个条目都
bid格式招投标文件阅读器,可以打开浏览、管理电子招标文件,如果打不开标书文件,请按下面步骤检查:1、请查看招标文件(.bid文件)是否下载完全,请用IE下载工具下载;2、查看IE浏览器版本,如果版本低于IE8,低于IE...
标题中的“Bid Documents - Service Pick-up_OntheUp_tantakpins_”暗示这是一份关于服务接洽的投标文档,其中可能包含了与"OntheUp"和"tantakpins"两个关键词相关的服务流程或项目信息。"OntheUp"可能是项目、服务...
`quadratic_bid_ninebus.m`可能涉及了二次出价(Quadratic Bidding)的概念,这是电力市场中一种价格-数量关系的表示方式,其中发电或负荷的成本随着出力的增加而呈二次函数变化。在这个程序中,它可能被用来模拟...
马里奥matlab代码适应类别的BID 一种基于即插即用方法的适应类盲图像去模糊方法。 %================================================= ===================% [1]和[2]中的适用于类的BID方法的MATLAB DEMO。 该...
- 在 "选择对象" 对话框中,选定需要的表,例如 "cctv_bid_result_qin_99" 和 "cctv_enterprise"。 7. **导入对象** - 在 "Generate Relationships" 对话框中,点击 "Import" 按钮将所选对象导入框架。 8. **...