如何使用javascript获取特定的子节点类名?

时间:2014-04-04 12:37:34

标签: javascript html

我想获得特定的子节点(即类名)。我怎样才能做到这一点。这是我的代码

    <div id="mess">
                     <h1>Bhashyam School</h1>
                        <p>AC Nagar Main Road, Nellore <br/>Ho, Nellore - 524001  </p>
                     <p class="tel">Telephone: +(91)-9603444376 </p>
                     <p class="email">Email: <a href="mailto:info@citydeal.in">info@citydeal.in</a></p>
                     <p class="web">Website: <a href="http//citydeal.in" target="new">http//citydeal.in</a></p>
                     <p class="description">Hours of Operation : 
                        Monday, Tuesday, Wednesday, Thursday, Friday, Saturday: 09:30 am to 10:00 pm<br>
                        Sunday: Closed , Modes of Payment : 
                        Cash
                     </p>

<form name="contactform" method="post" action="send.php" onsubmit="return getChilds();">
                    <p>
                        <input id="box" type="text" name="telephone" placeholder="Enter Mobile Number"/>

                        <input type="hidden" name="strToSend" id="strToSend"/>
                        <button type="submit" class="button" value="Submit">Get SMS</button>
                    </p>
                </form>
    </div>

    <script type="text/javascript">
        function getChilds()
    {
        var arr=document.getElementById('mess').childNodes, str='';
        for(var i=0; i<arr.length; i++) {
            if(arr[i].innerHTML!=undefined) {
                str+=" "+(arr[i].textContent||arr[i].innerText);
            }
        }
        document.getElementById("strToSend").value=str;
        return true;
    }
    </script>

在上面的javascript代码中,我希望childNodes具有特定的类名(例如:p class =&#34; tel&#34;,p class =&#34; email&#34;)。

1 个答案:

答案 0 :(得分:1)

使用jQuery?

.children(".yourClass")

Documentation

正如我在评论中所说的那样,没有jQuery:

.querySelectorAll(".yourClass")

Documentation

因为我是世界上最好的人,所以这是一个有.querySelectorAll()的JSFiddle:

http://jsfiddle.net/F8DeQ/

(为了让您看到结果,我将您的hidden输入设为text