Jquery 这样做的唯一方法是内联if语句吗?

Jquery 这样做的唯一方法是内联if语句吗?,jquery,Jquery,当前,如果输入框为空,则将其设置为空字符串。我当前使用console.log记录这些值 是否可以给这些值赋“NULL”值,我能看到的唯一方法可能是将if语句放在val()中。但是有没有更好的方法,也许是我缺少的链接功能 因此,如果输入框有一个值,我希望将其分配给变量。如果是空字符串,我希望将“NULL”分配给变量 希望我解释得足够好 var filterMinPV = $('.hidePVVol > td input:first').val(); var filterMaxPV = $('

当前,如果输入框为空,则将其设置为空字符串。我当前使用console.log记录这些值

是否可以给这些值赋“NULL”值,我能看到的唯一方法可能是将if语句放在val()中。但是有没有更好的方法,也许是我缺少的链接功能

因此,如果输入框有一个值,我希望将其分配给变量。如果是空字符串,我希望将“NULL”分配给变量

希望我解释得足够好

var filterMinPV = $('.hidePVVol > td input:first').val();
var filterMaxPV = $('.hidePVVol > td input:last').val();
这并不是说它有什么帮助,因为您仍然需要在某个地方测试
null
,您也可以改为测试空字符串

您可能希望通过以下方式避免两次查询此复杂选择器的相同元素集:

var filterMinPV = $('.hidePVVol > td input:first').val() || null;
var filterMaxPV = $('.hidePVVol > td input:last').val() || null;

记录值时:

var inputs =  $('.hidePVVol > td input'),
    filterMinPV = inputs.first().val() || null,
    filterMaxPV = inputs.last().val() || null;

为什么您不能在登录之前检查var?检查其是否为空字符串并将其更改为“NULL”@jzworkman试图在代码中保留行空间。这已经是一个相当大的函数,必须检查这两个变量以及大约20个其他变量对我来说太难了。你可以在下面看到我的答案,如果您想让数据使用变量而不必在一行中进行两次jquery调用,请在记录数据的位置添加一个内联检查。感谢大家提供了超级快速和正确的答案。你们都帮助我成为一名更好的程序员!如果该值是字符串“0”,是否会将该值设置为null?否,因为只有空字符串是假值
0'//true!!''//false
比PHP好得多,那么。:)虽然数字0将失败。
.val
的结果是一个
字符串,而不是经过解析的
数字:)我喜欢内联条件。@MichaelRushton我不明白它是如何工作的,但我很高兴它能工作。这是什么意思?做我们将尝试在jquery.com上找到它。再次感谢您使用内联条件运算符。条件是
前面的语句,true选项在
前面,而false选项在
变量=[condition]后面?[如果为真]:[如果为假]
啊,谢谢你们,直到现在我才知道这是可能的
var inputs =  $('.hidePVVol > td input'),
    filterMinPV = inputs.first().val() || null,
    filterMaxPV = inputs.last().val() || null;
logger.log(filterMinPV == '' ? filterMinPV : 'NULL');
logger.log(filterMaxPV == '' ? filterMaxPV : 'NULL');