javascript - 如何忽略 jQuery 中的两个 null 或未分配的值?

标签 javascript jquery null onblur htmltext

我有这段代码来比较两个值以验证它们是否相同:

$(document).on("blur", "[id$=boxSection5Total]", function (e) {
    var totalvalue = $(this).val();
    var paymenttotalvalue = $('[id$=boxPaymentAmount]').val();
    if (totalvalue != paymenttotalvalue) {
        console.log("The value in 'Total' does not equal the previous value in 'Payment Total.'");
        alert("The value in 'Total' does NOT equal the previous value in 'Payment Total.' payment total is " + paymenttotalvalue + " and total is " + totalvalue);
    }
    else {
        console.log("The value in 'Total' DOES equal the previous value in 'Payment Total'");
    }
});

但是,如果两个文本元素都留空,则会失败 - 它们被认为不相等(“if (totalvalue != paymenttotalvalue)”条件为 true)。

如何重构代码,使其忽略两个元素都留空的情况?

类似于:

$(document).on("blur", "[id$=boxSection5Total]", function (e) {
    var totalvalue = $(this).val();
    var paymenttotalvalue = $('[id$=boxPaymentAmount]').val();
    if ((totalvalue == null) & (paymenttotalvalue == null)) {
        return;
    }
    . . .
});

“boxSection5Total”和“boxPaymentAmount”都是文本元素(文本框)。

最佳答案

如果您想专门检查 null,您应该尝试这样的操作。

if (totalvalue !== null && paymenttotalvalue !== null && totalvalue != paymenttotalvalue)

如果您想检查是否不真实(另请参阅此处:JavaScript: how to test if a variable is not NULL),您可以使用以下内容:

if (totalvalue && paymenttotalvalue && totalvalue != paymenttotalvalue)

关于javascript - 如何忽略 jQuery 中的两个 null 或未分配的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31280194/

相关文章:

javascript - 如何 router.navigate 到 Angular 4 中的相同路线并捕获相同的事件?

javascript - AngularJS 不显示 API 中的图像

javascript - 请解释一下此代码...?

ios - 快速通过 segue 传递数据时出现问题

javascript - 具有 ionic 框架的 Cordova 亮度插件

javascript - 根据下拉菜单中的选择执行公式/计算?

javascript - map SVG 的 View 框小于要显示的圆形标记

javascript - 从文本框中单击后,jQuery onblur 不显示值

mysql - 即使数据库中不存在实体,如何让 hibernate 返回实体

ruby - `nil` .to_i #=> 0`, ` "".to_i #=> 0` `nil` .to_f#=> 0. 0`, ` "".to_f#=> 0.0` 的用例