首页 > 解决方案 > jquery $().contents() 给我 [object Object]

问题描述

我的代码存在一些问题以及如何使其工作我正在努力使用 jquery 来获取<a> </a>. 目前,下面的代码只是让我返回 [object Object] 有人可以指出我正确的方向。

<div id="conData" style="float:left; margin-left:10px;">
                <a id="ID" style="border-bottom:solid 1px grey;">24</a><br>
                <a id="UN" style="border-bottom:solid 1px grey;">joe b</a><br>
                <a id="RO" style="border-bottom:solid 1px grey;">email</a><br>
                <a id="CO" style="border-bottom:solid 1px grey;">6:00pm</a><br>
                <a id="DT" style="border-bottom:solid 1px grey;">UK</a><br>
                <a id="LC" style="border-bottom:solid 1px grey;">Jquery</a><br>

</div>

<button type="button" role="submit" id="ConfirmCourse">Confirm Course</button>

<script>
    $(document).on('click', '#ConfirmCourse', function() {
        var DataText = $('#conData').contents()
                                    .filter(function(){
                                         return this.nodeType === 3;})
                                   .wrap("<a></a>")
                                   .end();
                                   .filter( "br" )
                                   .remove();
        console.log(DataText);

</script>

编辑:我已经将代码更改console.log(DataText);为给出下面的输出,我无法做出正面或反面。

[object Object]
   {
      [functions]: ,
      0: {
         [functions]: ,
         __proto__: { },
         ATTRIBUTE_NODE: 2,
         attributes: null,
         CDATA_SECTION_NODE: 4,
         childNodes: { },
         COMMENT_NODE: 8,
         constructor: { },
         data: "
                ",
         DOCUMENT_FRAGMENT_NODE: 11,
         DOCUMENT_NODE: 9,
         DOCUMENT_POSITION_CONTAINED_BY: 16,
         DOCUMENT_POSITION_CONTAINS: 8,
         DOCUMENT_POSITION_DISCONNECTED: 1,
         DOCUMENT_POSITION_FOLLOWING: 4,
         DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32,
         DOCUMENT_POSITION_PRECEDING: 2,
         DOCUMENT_TYPE_NODE: 10,
         ELEMENT_NODE: 1,
         ENTITY_NODE: 6,
         ENTITY_REFERENCE_NODE: 5,
         firstChild: null,
         lastChild: null,
         length: 5,
         localName: null,
         namespaceURI: null,
         nextSibling: null,
         nodeName: "#text",
         nodeType: 3,
         nodeValue: "
                ",
         NOTATION_NODE: 12,
         ownerDocument: { },
         parentNode: { },
         prefix: null,
         previousSibling: null,
         PROCESSING_INSTRUCTION_NODE: 7,
         TEXT_NODE: 3,
         textContent: "
                ",
         wholeText: "
                "
      },
      1: { },
      2: { },
      3: { },
      4: { },
      5: { },
      6: { },
      7: { },
      8: { },
      9: { },
      10: {
         [functions]: ,
         __proto__: { },
         accessKey: "",
         ATTRIBUTE_NODE: 2,
         attributes: { },
         canHaveChildren: true,
         canHaveHTML: true,
         CDATA_SECTION_NODE: 4,
         charset: "",
         childElementCount: 0,
         childNodes: { },
         children: { },
         classList: { },
         className: "",
         clientHeight: 0,
         clientLeft: 0,
         clientTop: 0,
         clientWidth: 0,
         COMMENT_NODE: 8,
         constructor: { },
         contentEditable: "inherit",
         coords: "",
         currentStyle: { },
         dataset: { },
         dir: "",
         disabled: false,
         DOCUMENT_FRAGMENT_NODE: 11,
         DOCUMENT_NODE: 9,
         DOCUMENT_POSITION_CONTAINED_BY: 16,
         DOCUMENT_POSITION_CONTAINS: 8,
         DOCUMENT_POSITION_DISCONNECTED: 1,
         DOCUMENT_POSITION_FOLLOWING: 4,
         DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32,
         DOCUMENT_POSITION_PRECEDING: 2,
         DOCUMENT_TYPE_NODE: 10,
         draggable: true,
         ELEMENT_NODE: 1,
         ENTITY_NODE: 6,
         ENTITY_REFERENCE_NODE: 5,
         firstChild: { },
         firstElementChild: null,
         hash: "",
         hidden: false,
         hideFocus: false,
         host: "",
         hostname: "",
         href: "",
         hreflang: "",
         id: "CO",
         innerHTML: " ArchGis",
         innerText: " ArchGis",
         isContentEditable: false,
         isDisabled: false,
         isMultiLine: true,
         isTextEdit: false,
         lang: "",
         language: "",
         lastChild: { },
         lastElementChild: null,
         localName: "a",
         Methods: "",
         mimeType: "",
         msContentZoomFactor: 1,
         msRegionOverflow: "undefined",
         name: "",
         nameProp: "",
         namespaceURI: "http://www.w3.org/1999/xhtml",
         nextElementSibling: { },
         nextSibling: { },
         nodeName: "A",
         nodeType: 1,
         nodeValue: null,
         NOTATION_NODE: 12,
         offsetHeight: 22,
         offsetLeft: 157,
         offsetParent: { },
         offsetTop: 214,
         offsetWidth: 54,
         onabort: null,
         onactivate: null,
         onbeforeactivate: null,
         onbeforecopy: null,
         onbeforecut: null,
         onbeforedeactivate: null,
         onbeforepaste: null,
         onblur: null,
         oncanplay: null,
         oncanplaythrough: null,
         onchange: null,
         onclick: null,
         oncontextmenu: null,
         oncopy: null,
         oncuechange: null,
         oncut: null,
         ondblclick: null,
         ondeactivate: null,
         ondrag: null,
         ondragend: null,
         ondragenter: null,
         ondragleave: null,
         ondragover: null,
         ondragstart: null,
         ondrop: null,
         ondurationchange: null,
         onemptied: null,
         onended: null,
         onerror: null,
         onfocus: null,
         onfocusin: null,
         onfocusout: null,
         ongotpointercapture: null,
         onhelp: null,
         oninput: null,
         onkeydown: null,
         onkeypress: null,
         onkeyup: null,
         onload: null,
         onloadeddata: null,
         onloadedmetadata: null,
         onloadstart: null,
         onlostpointercapture: null,
         onmousedown: null,
         onmouseenter: null,
         onmouseleave: null,
         onmousemove: null,
         onmouseout: null,
         onmouseover: null,
         onmouseup: null,
         onmousewheel: null,
         onmscontentzoom: null,
         onmsgesturechange: null,
         onmsgesturedoubletap: null,
         onmsgestureend: null,
         onmsgesturehold: null,
         onmsgesturestart: null,
         onmsgesturetap: null,
         onmsgotpointercapture: null,
         onmsinertiastart: null,
         onmslostpointercapture: null,
         onmsmanipulationstatechanged: null,
         onmspointercancel: null,
         onmspointerdown: null,
         onmspointerenter: null,
         onmspointerleave: null,
         onmspointermove: null,
         onmspointerout: null,
         onmspointerover: null,
         onmspointerup: null,
         onpaste: null,
         onpause: null,
         onplay: null,
         onplaying: null,
         onpointercancel: null,
         onpointerdown: null,
         onpointerenter: null,
         onpointerleave: null,
         onpointermove: null,
         onpointerout: null,
         onpointerover: null,
         onpointerup: null,
         onprogress: null,
         onratechange: null,
         onreset: null,
         onscroll: null,
         onseeked: null,
         onseeking: null,
         onselect: null,
         onselectstart: null,
         onstalled: null,
         onsubmit: null,
         onsuspend: null,
         ontimeupdate: null,
         onvolumechange: null,
         onwaiting: null,
         outerHTML: "<a id="CO" style="border-bottom-color: grey; border-bottom-width: 1px; border-bottom-style: solid;"> ArchGis</a>",
         outerText: " ArchGis",
         ownerDocument: { },
         parentElement: { },
         parentNode: { },
         parentTextEdit: { },
         pathname: "",
         port: "",
         prefix: null,
         previousElementSibling: { },
         previousSibling: { },
         PROCESSING_INSTRUCTION_NODE: 7,
         protocol: "",
         protocolLong: "",
         recordNumber: null,
         rel: "",
         rev: "",
         runtimeStyle: { },
         scrollHeight: 22,
         scrollLeft: 0,
         scrollTop: 0,
         scrollWidth: 54,
         search: "",
         shape: "rect",
         sourceIndex: 1187,
         spellcheck: true,
         style: { },
         tabIndex: 0,
         tagName: "A",
         target: "",
         text: " ArchGis",
         TEXT_NODE: 3,
         textContent: " ArchGis",
         title: "",
         type: "",
         uniqueID: "ms__id148014",
         uniqueNumber: 148014,
         urn: ""
      },
      11: { },
      12: { },
      13: { },
      14: { },
      15: { },
      16: { },
      17: { },
      18: {
         [functions]: ,
         __proto__: { },
         ATTRIBUTE_NODE: 2,
         attributes: null,
         CDATA_SECTION_NODE: 4,
         childNodes: { },
         COMMENT_NODE: 8,
         constructor: { },
         data: "

                ",
         DOCUMENT_FRAGMENT_NODE: 11,
         DOCUMENT_NODE: 9,
         DOCUMENT_POSITION_CONTAINED_BY: 16,
         DOCUMENT_POSITION_CONTAINS: 8,
         DOCUMENT_POSITION_DISCONNECTED: 1,
         DOCUMENT_POSITION_FOLLOWING: 4,
         DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32,
         DOCUMENT_POSITION_PRECEDING: 2,
         DOCUMENT_TYPE_NODE: 10,
         ELEMENT_NODE: 1,
         ENTITY_NODE: 6,
         ENTITY_REFERENCE_NODE: 5,
         firstChild: null,
         lastChild: null,
         length: 10,
         localName: null,
         namespaceURI: null,
         nextSibling: null,
         nodeName: "#text",
         nodeType: 3,
         nodeValue: "

                ",
         NOTATION_NODE: 12,
         ownerDocument: { },
         parentNode: { },
         prefix: null,
         previousSibling: null,
         PROCESSING_INSTRUCTION_NODE: 7,
         TEXT_NODE: 3,
         textContent: "

                ",
         wholeText: "

                "
      },
      __proto__: {
         [functions]: ,
         __proto__: { },
         jquery: "3.3.1",
         length: 0
      },
      jquery: "3.3.1",
      length: 19,
      prevObject: { }
   }

标签: javascriptjquery

解决方案


在 jQuery 的文档中 remove()返回一个 jQuery 对象。这就是导致[object Object].

取决于你想要什么

获取数组中锚点的内容:

var data = {};

$('#conData a').each(function () {
    data[$(this).attr('id')] = $(this).text();
});

将返回以下

{
    ID: 24,
    UN: joe b
    RO: email
    ...
}

顺便说一句:不需要使用filterand remove,您的内容中有 nu<br />元素。


推荐阅读