下面的代码使用 this.value 来获取表单下拉列表的值。我通常只看到 .val() 使用过。以下方式是否可以接受跨浏览器(尤其是旧版本的 IE)?谢谢!
$(':input', '#all').each(function() {
alert(this.value);
});
下面的代码使用 this.value 来获取表单下拉列表的值。我通常只看到 .val() 使用过。以下方式是否可以接受跨浏览器(尤其是旧版本的 IE)?谢谢!
$(':input', '#all').each(function() {
alert(this.value);
});
是的,它是可以接受的,更具可读性,并且比调用更便宜(更快)$(this).val()
。
简单来说,$(this)
指的是一个 jQuery 对象,而this
指的是一个 DOM 元素。
此处的常见问题解答简要介绍了它(在“了解您的 DOM 属性和功能”下)
当原生 DOM API 足够时,你应该使用普通的“this”,当你需要 jQuery 的帮助时,你应该使用 $(this)。
我还建议阅读以下内容:
jQuery:'$(this)' 和 'this' 有什么区别?
这应该工作
对于 JQuery val
,您需要$(this).val()