下面的代码使用this.value来获取表单下拉列表的值。我一般只看到.val()使用过。以下方式是否可以接受跨浏览器(尤其是IE的旧版本)?谢谢!
$(':input', '#all').each(function() {
alert(this.value);
});
答案 0 :(得分:6)
是的,它比可以接受,更具可读性,并且比调用$(this).val()
更便宜(更快)。
简单地说,$(this)
指的是jQuery对象,而this
指的是DOM元素。
FAQ here简要介绍了它(在'了解你的DOM属性和功能'下)
当本机DOM API足够时,你应该使用普通的“this” $(this)当你需要jQuery的帮助时。
我还建议阅读以下内容:
jQuery: What's the difference between '$(this)' and 'this'?
When to use Vanilla JavaScript vs. jQuery?
utilizing-the-awesome-power-of-jquery-to-access-properties-of-an-element
答案 1 :(得分:-1)
这应该有效
对于JQuery val
,您需要$(this).val()