jquery如果文本输入*不*等于空白

我试图找出如果某个文本框不为空(如包含某些东西,可能是任何东西)的方法

这是我的代码(似乎不起作用)

if ( !($('#edit-sPostalCode').attr('val','')) ) { stuff here } 

我错过了什么?

 if ( $('#edit-sPostalCode').val() != '' ) { stuff here } 

$('#edit-sPostalCode').attr('val','')实际上将创建一个值为''的输入框的属性,然后返回一个jQuery对象。

!($('#edit-sPostalCode').attr('val',''))将取消该jQuery对象。 由于对象的实例在JS中是真实的 ,因此该表达式的结果将始终为false

你知道.val方法吗?

 if ( $('#edit-sPostalCode').val() !== '' ) { 

如果你认为空格完全等同于任何东西,你应该$.trim这个值:

 if ( $.trim( $('#edit-sPostalCode').val() ) !== '' ) { 
 if ( !($('#edit-sPostalCode').val() === '') ) { stuff here }