通过class属性获取兄弟,然后使用textContent

时间:2014-09-30 02:17:12

标签: javascript jquery

如果我在控制台中这样做:

foo = document.querySelectorAll('#authCreateAcctUsernameInput')

然后返回这样的对象: FOO

[<input type=​"text" maxlength=​"70" id=​"authCreateAcctUsernameInput" name=​"userName" autocomplete=​"off" autocapitalize=​"off" autocorrect=​"off">​]

html看起来像这样:

<fieldset>
    <label class="userName" for="authCreateAcctUsernameInput">Email Address</label>
    <input type="text" maxlength="70" id="authCreateAcctUsernameInput" name="userName" autocomplete="off" autocapitalize="off" autocorrect="off">
    <span id="authCreateAcctUsernameErrorTxt" class="errorMSG" style="display: block;">Please enter a valid email address.</span></fieldset>

我想要获取最后一个元素的内容(&#34;请输入有效的电子邮件地址&#34;)所以我试过了:

$(foo).siblings('.errorMSG').textContent

但是返回未定义。 .innerHTML.value

也是如此

我如何根据兄弟的类值获取兄弟的textContent(所以使用类errorMG获取兄弟的textContent)?

1 个答案:

答案 0 :(得分:1)

我认为问题是将jQuery与javascript混合。

执行此操作以获取文本。

$(foo).siblings('.errorMSG').text();

textContentDOM对象的属性,但是你有一个jQuery对象。所以在它上面调用jquery函数。

Bellow是不同的DOM对象属性&amp;有等效的Jquery对象函数

DOMObject.value         jqueryObject.val()
DOMObject.innerHTML     jqueryObject.html()
DOMObject.textConetnt   jqueryObject.text()

还有很多其他人。