验证添加信息,判断数字,长度等(week3)

本文介绍了一个使用AngularJS实现的简单资产管理应用,该应用允许用户添加新的资产记录并搜索已有的资产信息。通过AngularJS框架的强大功能,实现了客户端的数据管理和交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/angular.min.js"></script>
<script src="js/jquery-1.11.1.js"></script>
<style>
table{
width: 600px;
text-align: center;
}
td{
border: 1px solid black; 
}
form{
width: 800px;
margin-top: 30px;
}
form input{
margin-top: 15px;
}
ul li{
color:red;
}
</style>
<script>
var myapp=angular.module("dxtapp",[]);
myapp.controller("demo1",["$scope",function($scope){

$scope.toadd=false;
$scope.goods=[
{id:10011120,name:"iphoneX",number:99},
{id:10011121,name:"华为mate10",number:20},
{id:10011122,name:"vivoR12",number:55},
];
//添加
$scope.add=function(){
$scope.error_val=[];
var reg_id=/^\d{8,8}$/;//只能8位数字
//验证编号
if(!reg_id.test($scope.uid)){
$scope.error_val.push("资产编号必须是数字且长度为8位");
}
//验证名称
if($scope.uname==undefined || $scope.uname==""){
$scope.error_val.push("资产名称不能为空");
}else{
for(var i in $scope.goods){
if($scope.uname==$scope.goods[i].name){
$scope.error_val.push("资产名称已经存在");
break;
}
      }
       }
 //验证资产数量
var reg_num=/^\d{1,}$/;
if(!reg_num.test($scope.unumber)){
$scope.error_val.push("资产编号必须为纯数字");
}else{
if($scope.unumber<=0){
$scope.error_val.push("资产编号数量必须大于0");
}
}
//何时添加,何时不添加
if($scope.error_val.length==0){
$scope.goods.push({
id:$scope.uid,
name:$scope.uname,
number:$scope.unumber,
});
}
};
//搜索
$scope.search=function(){
if($scope.sel==undefined || $scope.sel==""){
alert("输入内容不能为空");
return;
}
for(var i=0; i<$scope.goods.length;i++){
if($scope.goods[i].name==$scope.sel){
alert("搜到相关内容");
return true;
}
}
alert("未搜索到相关内容");
};
}])
</script>
</head>
<body ng-app="dxtapp" ng-controller="demo1">
<center>
<p>资产登记</p>
<button ng-click="toadd=true" style="margin-right: 600px;">添加</button><br />
<span style="margin-left: 300px;">资产搜索</span><input ng-model="sel"/>
<button ng-click="search()">搜索</button>
<table border="1" cellspacing="0">
<tr>
<td>资产编号</td>
<td>资产名称</td>
<td>资产数量</td>
</tr>
<tr ng-repeat="g in goods">
<td>{{g.id}}</td>
<td>{{g.name}}</td>
<td>{{g.number}}</td>
</tr>
</table><br />
<form ng-show="toadd">
资产编号<input type="text" ng-model="uid" /><br />
资产名称<input type="text" ng-model="uname" /><br />
资产数量<input type="text" ng-model="unumber" /><br />
<div>
<ul>
<li ng-repeat="e in error_val">
{{e}}
</li>
</ul>
</div>
<button ng-click="add()" style="margin-top: 15px;">资产录入</button>
</form>
</center>
</body>
</html>
你的身份是高级编程技术专家,精通各类编程语言,能对编程过程中的各类问题进行分析和解答。我的问题是【我正在编辑【通达信量化择时选股】代码,遇到了 【错误句 : {---------- 多周期验证模块(修正后)----------} WEEK_CLOSE := CALLSTOCK(188, VTCLOSE, 6, -2) 详细信息 : 您在括号前写的不是函数、公式等,且缺少必要的运算符! 错误起始位置 : 1461 ; 长度: 7】,请帮我检查并改正错误点补全正确代码,原有选股逻辑完整保留,所有参数计算关系和信号触发条件优化计算,生成修正后完整代码。我的原始代码如下:【{---------- 系统参数定义 ----------} PE_CALC := IF(FINANCE(33)>0, FINANCE(30)/FINANCE(4), 1000); PB_CALC := IF(FINANCE(5)>0, FINANCE(30)/FINANCE(5), 1000); {---------- 动态参数优化模块(增强版)----------} VOLAT := STD(CLOSE,20)/MA(CLOSE,20); VAR_PD := IF(VOLAT<0.06,89,IF(VOLAT<0.12,55,IF(VOLAT<0.2,34,21))); MACD_F := MAX(5, CEILING(VAR_PD*0.382)); MACD_S := MIN(60, FLOOR(VAR_PD*1.618)); MACD_M := 9; {---------- 核心指标系统(优化计算)----------} FAST_EMA := EMA(CLOSE,MACD_F); SLOW_EMA := EMA(CLOSE,MACD_S); DIF := EMA(FAST_EMA,3) - EMA(SLOW_EMA,3); DEA := EMA(DIF,MACD_M); MACD := 2*(DIF-DEA); MA5 := MA(CLOSE,5); MA10 := MA(CLOSE,10); MA20 := EMA(CLOSE,20); MA60 := EMA(CLOSE,60); {---------- 信号增强模块(增加量价验证)----------} MOM := EMA(CLOSE,5)/REF(EMA(CLOSE,21),5)-1; WK_CHG := (CLOSE-REF(CLOSE,5))/REF(CLOSE,5)*100; MOM_CFM := EMA(CLOSE,5)>EMA(EMA(CLOSE,5),13) AND CLOSE>HHV(CLOSE*0.7,40); VOL5 := MA(VOL,5); VOL20 := EMA(VOL,20); VOL_RTO := VOL/REF(VOL,1); FLOW_CD := VOL>VOL20*1.8 AND SUM(IF(CLOSE>REF(CLOSE,1),VOL*C,-VOL*C),5)/CAPITAL*100>3; {---------- 多维过滤条件(增加波动率验证)----------} TREND_CD := MA5>MA10 AND MA10>MA20 AND CLOSE>MA60; BREAK_CD := CROSS(DIF,DEA) AND MACD>REF(MACD,1) AND DIF>0; VALUE_CD := PE_CALC<30 AND PB_CALC<4.5; BOLL_W := (MA(CLOSE,20)+2*STD(CLOSE,20)-(MA(CLOSE,20)-2*STD(CLOSE,20)))/MA(CLOSE,20)*100; VOLAT_CD := BOLL_W>10 AND BOLL_W<18; CHIP_CD := FINANCE(7)/100 < 1.2; {---------- 多周期验证模块(修正后)----------} WEEK_CLOSE := CALLSTOCK(&#39;SH000001&#39;, VTCLOSE, 6, -2); // ??修正参数顺序:股票代码需字符串,6=周线,-2=前复权 WEEK_SG := WEEK_CLOSE > REF(WEEK_CLOSE,1) AND MA(WEEK_CLOSE,5) > MA(WEEK_CLOSE,10) AND WEEK_CLOSE > EMA(WEEK_CLOSE,20); // 增加长期趋势过滤 M30_CLOSE := CALLSTOCK(&#39;SH000001&#39;, VTCLOSE, 0, -2); // ??修正周期参数:0=30分钟线 M30_BRK := M30_CLOSE > EMA(M30_CLOSE,20) AND VOL > MA(VOL,5)*1.2 AND CROSS(M30_CLOSE, EMA(M30_CLOSE,50)); // 增加均线突破验证 {---------- 预警信号生成(增加量价确认)----------} DAY_ALT := CROSS(MA(CLOSE,5),MA(CLOSE,10)) AND VOL>REF(VOL,1)*1.5 AND CLOSE>OPEN*1.02 // 增加涨幅过滤 AND TIME<150000; ROC21 := (CLOSE-REF(CLOSE,21))/REF(CLOSE,21)*100; RANK_RC := (ROC21-LLV(ROC21,120))/(HHV(ROC21,120)-LLV(ROC21,120)+0.0001)*100; {---------- BETA系数计算(优化算法)----------} INDEX_MA := STKINDI(&#39;SH000001&#39;,&#39;MA.MA1&#39;,0,6,0); BETA_A := SLOPE(CLOSE/INDEX_MA,60)*STD(CLOSE,60)/STD(INDEX_MA,60); BETA_CD := (1+(BETA_A-1)*0.3)<1.2 AND CORR(CLOSE,INDEX_MA,60)>0.8; // 增加相关性过滤 {---------- 信号综合判断(优化触发逻辑)----------} COND_CNT := VALUE_CD + VOLAT_CD + CHIP_CD; FINAL_SG := FILTER( TREND_CD AND BREAK_CD AND FLOW_CD AND COND_CNT>=2 AND MOM_CFM AND RANK_RC>80 AND DAY_ALT AND BETA_CD AND WEEK_SG AND M30_BRK, 3); {---------- 输出模块(增加信号强度标识)----------} ALERT(FINAL_SG,&#39;多周期共振&#39;),SOUND; DRAWTEXT(FINAL_SG,LOW,&#39;★&#39;),COLORYELLOW,LINETHICK3; FILTER(FINAL_SG,1),NODRAW;】】
03-22
``` {---------- 系统参数定义 ----------} PE_CALC := IF(FINANCE(33)>0, FINANCE(30)/FINANCE(4), 1000); PB_CALC := IF(FINANCE(5)>0, FINANCE(30)/FINANCE(5), 1000); {---------- 动态参数优化模块(增强版)----------} VOLAT := STD(CLOSE,20)/MA(CLOSE,20); VAR_PD := IF(VOLAT<0.06,89,IF(VOLAT<0.12,55,IF(VOLAT<0.2,34,21))); MACD_F := MAX(5, CEILING(VAR_PD*0.382)); MACD_S := MIN(60, FLOOR(VAR_PD*1.618)); MACD_M := 9; {---------- 核心指标系统(优化计算)----------} FAST_EMA := EMA(CLOSE,MACD_F); SLOW_EMA := EMA(CLOSE,MACD_S); DIF := EMA(FAST_EMA,3) - EMA(SLOW_EMA,3); DEA := EMA(DIF,MACD_M); MACD := 2*(DIF-DEA); MA5 := MA(CLOSE,5); MA10 := MA(CLOSE,10); MA20 := EMA(CLOSE,20); MA60 := EMA(CLOSE,60); {---------- 信号增强模块(增加量价验证)----------} MOM := EMA(CLOSE,5)/REF(EMA(CLOSE,21),5)-1; WK_CHG := (CLOSE-REF(CLOSE,5))/REF(CLOSE,5)*100; MOM_CFM := EMA(CLOSE,5)>EMA(EMA(CLOSE,5),13) AND CLOSE>HHV(CLOSE*0.7,40); VOL5 := MA(VOL,5); VOL20 := EMA(VOL,20); VOL_RTO := VOL/REF(VOL,1); FLOW_CD := VOL>VOL20*1.8 AND SUM(IF(CLOSE>REF(CLOSE,1),VOL*C,-VOL*C),5)/CAPITAL*100>3; {---------- 多维过滤条件(增加波动率验证)----------} TREND_CD := MA5>MA10 AND MA10>MA20 AND CLOSE>MA60; BREAK_CD := CROSS(DIF,DEA) AND MACD>REF(MACD,1) AND DIF>0; VALUE_CD := PE_CALC<30 AND PB_CALC<4.5; BOLL_W := (MA(CLOSE,20)+2*STD(CLOSE,20)-(MA(CLOSE,20)-2*STD(CLOSE,20)))/MA(CLOSE,20)*100; VOLAT_CD := BOLL_W>10 AND BOLL_W<18; CHIP_CD := FINANCE(7)/100 < 1.2; {---------- 多周期验证模块(修正后)----------} WEEK_CLOSE := CALLSTOCK(&#39;&#39;, VTCLOSE, 6, -2); // 修正点1:首个参数改为空字符串 WEEK_SG := WEEK_CLOSE > REF(WEEK_CLOSE,1) AND MA(WEEK_CLOSE,5) > MA(WEEK_CLOSE,10) AND WEEK_CLOSE > EMA(WEEK_CLOSE,20); M30_CLOSE := CALLSTOCK(&#39;&#39;, VTCLOSE, 1, -2); // 修正点2:参数标准化 M30_BRK := M30_CLOSE > EMA(M30_CLOSE,20) AND VOL > MA(VOL,5)*1.2 AND CROSS(M30_CLOSE, EMA(M30_CLOSE,50)); {---------- 预警信号生成(增加量价确认)----------} DAY_ALT := CROSS(MA(CLOSE,5),MA(CLOSE,10)) AND VOL>REF(VOL,1)*1.5 AND CLOSE>OPEN*1.02 AND TIME<150000; ROC21 := (CLOSE-REF(CLOSE,21))/REF(CLOSE,21)*100; RANK_RC := (ROC21-LLV(ROC21,120))/(HHV(ROC21,120)-LLV(ROC21,120)+0.0001)*100; {---------- BETA系数计算(优化算法)----------} INDEX_MA := STKINDI(&#39;SH000001&#39;,&#39;MA.MA1&#39;,0,6,0); BETA_A := SLOPE(CLOSE/INDEX_MA,60)*STD(CLOSE,60)/STD(INDEX_MA,60); BETA_CD := (1+(BETA_A-1)*0.3)<1.2 AND CORR(CLOSE,INDEX_MA,60)>0.8; {---------- 信号综合判断(优化触发逻辑)----------} COND_CNT := VALUE_CD + VOLAT_CD + CHIP_CD; FINAL_SG := FILTER( TREND_CD AND BREAK_CD AND FLOW_CD AND COND_CNT>=2 AND MOM_CFM AND RANK_RC>80 AND DAY_ALT AND BETA_CD AND WEEK_SG AND M30_BRK, 3); {---------- 输出模块(增加信号强度标识)----------} ALERT(FINAL_SG,&#39;多周期共振&#39;),SOUND; DRAWTEXT(FINAL_SG,LOW,&#39;★&#39;),COLORYELLOW,LINETHICK3; FILTER(FINAL_SG,1),NODRAW;```你的身份是高级编程技术专家,精通各类编程语言,能对编程过程中的各类问题进行分析和解答。我的问题是【我正在编辑【通达信量化择时选股】代码,遇到了 【错误句 : {---------- 多周期验证模块(修正后)----------} WEEK_CLOSE := CALLSTOCK(184, VTCLOSE, 6, -2) 详细信息 : 您在括号前写的不是函数、公式等, 且缺少必要的运算符! 错误起始位置 : 1461 ; 长度: 7】,请帮我检查并改正错误点补全正确代码,原有选股逻辑完整保留,所有参数计算关系和信号触发条件均不变,生成修正后完整代码。
03-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值