获取特定HTML标记JavaScript的内容

时间:2014-05-23 15:43:21

标签: javascript jquery html

我需要将HTML中特定标记的内容作为字符串或XML

获取
<body>
    <script src="jquery.min.js">
    //var test = document.getElementsByTagName("input");
    //alert(test[0]);
        $(document).ready(function () {
            var test = $("input");
            alert(test);
        }

    </script>

    <input id="Button1" type="button" value="button" />
    <textarea id="TextArea1" rows="2" cols="20"></textarea>
    <textarea id="TextArea1" rows="2" cols="20"></textarea>
    <input id="Text1" type="text" />
    <input id="Text1" type="text" />
    <input id="Text1" type="text" />

    <circuit>
        <c type="Bipolar" name="c1">
            <cathode row="10" col="20" />
            <anode row="15" col="50" />

        </c>
        <and name="and1">
            ``
            <input>
            <pin row="10" col="40"></pin>
            <pin row="20" col="40"></pin>
            </Input>
            <output>
                <pin row="30" col="50"></pin>
            </output>
        </and>

        <diode name="d1" value="30">
            <anode row="30" col="50"></anode>
            <cathode row="40" col="60"></cathode>
        </diode>

        <r type="Constant" name="r1">
            <node row="60" col="80"></node>
            <node row="70" col="80"></node>
        </r>
    </circuit>
    <input id="Text1" type="text" />

    <textarea id="TextArea1" rows="2" cols="20"></textarea>

</body>

我只需要<Circuit>标记,其中的所有元素都是这样的

<Circuit>
<C Type="Bipolar" Name="c1">
        <Cathode row="10" col="20"/>
        <Anode row="15" col="50"/>

    </C>
    <AND Name="and1">``
        <Input>
            <Pin row="10" col="40"></Pin>
            <Pin row="20" col="40"></Pin>
        </Input>
        <Output>
            <Pin row="30" col="50"></Pin>
        </Output>
    </AND>

    <Diode Name="d1" Value="30">
        <Anode row="30" col="50"></Anode>
        <Cathode row="40" col="60"></Cathode>
    </Diode>

<R Type="Constant" Name="r1">
    <Node row="60" col="80"></Node>
    <Node row="70" col="80"></Node>
</R>    
</Circuit>

我试图通过使用JQuery,DOM获取此标记,但不能

<script src="jquery.min.js">
        $(Document).ready(function ()
        {
           var test = $("circuit").children(0).html;
           alert(test);
        }
        );

</script>

还有Dom:

var test = document.getElementsByTagName("circuit")

我们无法在div中添加电路标记,并提供div ID,类名称以及电路标记。

还有其他解决方案吗?

4 个答案:

答案 0 :(得分:1)

我想我得到了你想要的东西。

1)如果你需要&#34;电路&#34;包含标签,除了虚拟前置标签之外别无其他方式,例如Fiddle

 $(document).ready(function () {
   var test = $("<div>").prepend($("circuit"));
   alert(test.html());
 });

2)如果你不需要&#34; Circuit&#34;标签,就像其他答案一样运行:

 $(document).ready(function () {
   var test = $("circuit"));
   alert(test.html());
 });

答案 1 :(得分:0)

html()是一个jQuery方法,所以你必须使用括号:

    //document not Document
    $(document).ready(function (){
       var test = $("circuit").html();
       console.log(test);
    });

答案 2 :(得分:0)

你不能写这样的脚本标签。这毫无意义。

<script src="jquery.min.js">
    $(Document).ready(function ()
    {
       var test = $("circuit").children(0).html;
       alert(test);
    }
    );

</script>

这样做。

<script src="jquery.min.js"></script>
<script>
    $(function(){
        //stuff to run on load
    });
</script>

答案 3 :(得分:-1)

var test = document.getElementsByTagName("input")[0].innerHTML;
alert(test);