【发布时间】:2012-07-05 10:17:45
【问题描述】:
通常在 jQuery 无法使用其选择器找到匹配元素的情况下,默认值绝不是例外,而是缺少操作。
我的理解是这是通过设计来确保缺少元素不会导致错误情况。但是我发现jQuery.val() 没有表现出同样的行为。如果所选元素不存在 jQuery.val() 将返回 undefined 而不是空字符串(这与我所期望的框架的其余部分保持一致)。
那么为什么jQuery.val() 是框架其余部分的例外,改变这种行为的最佳方法是什么?
【问题讨论】:
-
我不会考虑返回
undefined一个“错误条件”。此外,prop、attr和data的行为方式与val相同。 -
好吧,如果您使用这样的链接语法... $(".Field").val().IsNullOrEmpty()
-
($(".Field").val() || '').IsNullOrEmpty() -
这对我来说似乎很合乎逻辑,因为它在访问不存在元素的(显然未定义的)值和仅访问空值之间有所不同。
标签: javascript jquery api default-value