javascript - 添加到当前函数“总计”忽略某些值的逻辑
问题描述
我的项目即将插入几个小时,你花了多少时间。它适用于整数值,但现在我需要添加字符串值。像周日 =“NotWorknig”; 星期一 = "8"; 星期二 = “生病”;
function TotalP1() {
var text1_p1 = 0;
var text2_p1 = 0;
var text3_p1 = 0;
var TotalAmount = 0;
text1_p1 = $("#text1_p1").val() == '' ? 0 : $("#text1_p1").val();
text2_p1 = $("#text2_p1").val() == '' ? 0 : $("#text2_p1").val();
text3_p1 = $("#text3_p1").val() == '' ? 0 : $("#text3_p1").val();
TotalAmount =
parseInt(text1_p1) +
parseInt(text2_p1) +
parseInt(text3_p1);
$("#texttotal_p1").val(TotalAmount);
}
我想重写函数并使其工作相同,但忽略字符串值或特定整数值,例如“29”将是“假日”,如果用户插入的假日值为 29,但它被函数忽略并且不影响总和。没有给我“楠”的价值。任何提示,教程家伙)?
解决方案
解决方案1:
function TotalP1() {
var text1_p1 = 0;
var text2_p1 = 0;
var text3_p1 = 0;
var TotalAmount = 0;
text1_p1 = $("#text1_p1").val() == '' ? 0 : $("#text1_p1").val();
text2_p1 = $("#text2_p1").val() == '' ? 0 : $("#text2_p1").val();
text3_p1 = $("#text3_p1").val() == '' ? 0 : $("#text3_p1").val();
var parsedValueP1 = parseInt(text1_p1);
var parsedValueP2 = parseInt(text2_p1);
var parsedValueP3 = parseInt(text3_p1);
if(!isNaN(parsedValueP1)) {
TotalAmount += parsedValueP1;
}
if(!isNaN(parsedValueP2)) {
TotalAmount += parsedValueP2;
}
if(!isNaN(parsedValueP3)) {
TotalAmount += parsedValueP3;
}
$("#texttotal_p1").val(TotalAmount);
}
解决方案2:
function TotalP1() {
var text1_p1 = 0;
var text2_p1 = 0;
var text3_p1 = 0;
var TotalAmount = 0;
var numberRegex = /^\d+$/; //Only for Integers
text1_p1 = $("#text1_p1").val() == '' ? 0 : $("#text1_p1").val();
text2_p1 = $("#text2_p1").val() == '' ? 0 : $("#text2_p1").val();
text3_p1 = $("#text3_p1").val() == '' ? 0 : $("#text3_p1").val();
if(numberRegex.test(text1_p1)) {
TotalAmount += parseInt(text1_p1);
}
if(numberRegex.test(text2_p1)) {
TotalAmount += parseInt(text2_p1);
}
if(numberRegex.test(text3_p1)) {
TotalAmount += parseInt(text3_p1);
}
$("#texttotal_p1").val(TotalAmount);
}
推荐阅读
- mysql - 查询显示错误的结果
- python-3.x - 发现样本数量不一致的输入变量:[159, 40]
- php - move_uploaded_file() 无法将文件移动到 Google App Engine 上的 Google Storage (php 7.2)
- php - json_encode 转义字符 '<'
- android - 在 Android-Image-Cropper 中设置 ColorFilter
- sql-server - SQL Server 计算列中的条件
- r - R- Shiny - 如何更改饼图中图例的颜色?
- android - 使用 Facebook 登录时在 Firebase 中创建新用户
- javascript - 3d div 的父元素防止子元素悬停或单击
- css - 只有部分元素受半透明叠加影响