我很难从jQuery Select 器中找到实际的DOMElement.

示例代码:

<input type="checkbox" id="bob" />
var checkbox = $("#bob").click(function() { //some code  } )

在另一段代码中,我试图确定复选框的选中值.

  if ( checkbox.eq(0).SomeMethodToGetARealDomElement().checked )
    //do something.

拜托,我不想这么做:

  if ( checkbox.eq(0).is(":checked"))
    //do something

这让我绕过了复选框,但其他时候我需要真正的DOMElement.

推荐答案

您可以使用以下命令访问原始DOM元素:

$("table").get(0);

或者更简单地说:

$("table")[0];

然而(以我的经验来看),实际上你并不需要太多这样的东西.以你的复选框为例:

$(":checkbox").click(function() {
  if ($(this).is(":checked")) {
    // do stuff
  }
});

更"jQuery",(Imho)更简洁.如果你想给它们编号怎么办?

$(":checkbox").each(function(i, elem) {
  $(elem).data("index", i);
});
$(":checkbox").click(function() {
  if ($(this).is(":checked") && $(this).data("index") == 0) {
    // do stuff
  }
});

其中一些功能也有助于掩盖浏览器之间的差异.某些属性可以不同.classic 的示例是Ajax调用.要在原始Javascript中正确地做到这一点,对于XmlHttpRequest,大约有7个后备用例.

Jquery相关问答推荐

try 使用jQuery AJAX将参数传递给http Post方法时出现未知错误

如何向父元素添加类?

使用 JQuery 在 span 标签中用逗号分隔页面上的文本

jQuery:获取数据属性

将 HTML5 Canvas 转换为要上传的文件?

删除索引后的所有项目

如何使用jQuery在弹出窗口中预览输入类型=文件中的选定图像?

Javascript 使用哈希值重新加载页面

判断文本框是否有空值

如何隐藏 Twitter Bootstrap 下拉菜单

jQuery - 从元素内部 Select 元素

你如何记录jQuery中一个元素触发的所有事件?

为什么要使用发布/订阅模式(在 JS/jQuery 中)?

使用javascript将HTML页面中的div下载为pdf

Twitter Bootstrap 中的树

$(document).click() 在 iPhone 上无法正常工作. jQuery

textarea 的 val() 与 text()

jquery - 成功时使用ajax结果返回值

如何让 jQuery 等到效果完成?

Jquery 日期 Select 器 z-index 问题