2014-09-30 2 views
0

내가 콘솔에서이 작업을 수행하는 경우 :클래스 속성으로 형제를 취득하고는 TextContent

foo = document.querySelectorAll('#authCreateAcctUsernameInput') 

는 다음과 같은 객체가 반환됩니다

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

있는 HTML이 다음과 같습니다 foo는 :

<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> 

그리고 마지막 요소의 콘텐츠를 가져 오려면 ("유효한 이메일을 입력하십시오. 주소 ") 그래서 나는 이것을 시도 :

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

그러나 그것은 정의되지 않은 반환됩니다. 동일에 대한 .innerHTML.value

형제의 클래스 값을 기준으로 형제의 textContent를 가져 오려면 어떻게해야합니까? (그래서 errorMSG 클래스와 형제의 textContent를 가져옵니다)?

답변

1

나는 문제가 자바와 jQuery을 섞고 있다고 생각한다.

텍스트를 가져 오려면 여기로 이동하십시오.

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

textContentDOM 객체의 속성입니다,하지만 당신은 jQuery를 개체가 있습니다. 그래서 jquery 함수를 호출하십시오.

우는 소리는 &가 해당 JQuery와 개체 기능

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

그리고 많은 사람들이 다른 DOM 개체의 속성을 수 있습니다.

+0

예! 곧 그것을 받아 들일 계획을 가져 주셔서 감사합니다. 호기심, jquery를 사용하지 않는 방법이 거의 없습니까? –

+0

@DougFirr 내가 뭘 원하지 않아서 미안해? – Mritunjay

+0

다시 한번 감사드립니다. 다시 말하자면, 나는 "클래스를 기반으로하는 형제가되어"인터넷 검색 후에 만 ​​jquery를 사용했습니다. 모든 결과는 jquery를 가리 켰습니다. jquery와 js 만 사용하지 않고도 내 목표를 달성 할 수있는 간단하고 동등한 방법이 없다는 것을 확인하고 싶었습니까? –

관련 문제