我正在尝试通过了解 this
的工作原理来改进我的 jQuery 代码。我编写了这段代码:
$('.type, #type').on('change', function() {
selected = $(".type, #type :selected").val();
show = selected != 0 ? true : false;
$(".div").toggle(show);
});
并且对此有一些困难:
- 正如您所见,我使用了
.type, #type
,但是如果我想编写一个与任何属性中的相同值匹配的选择器该怎么办?例如:class=type, id=type, name=type
,可以为这种情况编写一个选择器吗?怎么办? - 代码现在可以工作,但我想尽可能使用
this
,如果我使用选择器.type, #type
那么我将拥有一个 DOM具有该对象的所有属性的对象,对吧?那么如何访问对象的属性或方法呢?例如:selected = $(".type, #type :selected").val();
获取selected
所选选项的值 我尝试了这个selected = $(this + ":selected").val();
但不起作用
有什么建议或帮助吗?您会对我的代码进行任何改进吗?
最佳答案
看看 jQuery 的选择器部分,如果不指定所有你想要的元素,你就不能神奇地“选择”它们。请记住,您可以执行以下操作:
$('input[type="text"]')
在第二个问题中,您可以使用:
$(this).find('option:selected').val()
另外,请查看 toggle
关于javascript - 如何在 jQuery 中访问当前 DOM 对象(改进代码),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25289610/