繁体   English   中英

if语句不断返回true

[英]if-statements keeps returning true

我的Java代码:

function saveChanges() {
var formData = {
    ProjectId: $('#rz-project').val(),
    ArticleId: $('#rz-article').val()
};

if (formData.ProjectId != null && formData.ArticleId != null)
{
    $.ajax({
        url: baseUrl + 'Time/EditReport',
        type: "post",
        data: { timeReport: formData },
        success: function (result) {
            success("Changed");
        },
        error: function (err) {
            alert(err.statusText);
        }
    })
}
else {   }

还尝试了!==,但是相同。

当我调试时,我可以看到值是空的,但是它执行的是if语句,这是真的。

我一直在谷歌搜索,但是有人使用了if($()),但是我没有,所以我看不到问题了吗? 尝试进行验证,但由于表单未发布,因此无法正常工作(有2个按钮,但两个按钮均相同,因此我不得不从发布更改为带有id的“ html.beginform”) 。

采用

if (formData.ProjectId != "" && formData.ArticleId != "")

没有元素具有null值。 null表示没有值,而在<input>元素中value始终存在。
因此,您不必检查该值是否存在,但是该值是否不为空,如@ sifanovi059所建议。 考虑到JavaScript可以将String隐式地转换为Boolean ,如果存在字符串( str )( str != null && str != undefined )并且字符串不为空( str.length > 0 ),则为true str != null && str != undefined您可以尝试以下方法:

if (formData.ProjectId && formData.ArticleId)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM