javascript - 如何在 jQuery 中访问当前 DOM 对象(改进代码)

标签 javascript jquery dom

我正在尝试通过了解 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/

相关文章:

javascript - CSS:考虑背景颜色的发光效果?

javascript - 如何在 Express 中设置更新路线

jquery - 如何将 cookie 附加到我的 jQuery post 请求 header ?

IE 和 Microsoft Edge 中的 jQuery 轮播页面移动

javascript - 函数式编程和 DOM 操作

java - 在 Java DOM 中获取节点的内部 XML 作为字符串

javascript - 将答案键数组与输入答案进行比较

javascript - 为动态加载的 "widget"重新处理代码?

javascript - 临时文档中的 getElementById 不起作用

javascript - 在构造函数中 react 绑定(bind),如何将参数传递给 Prop