如何在jQuery或Javascript中选择“document.write”等

How can I select "document.write", etc. in jQuery or Javascript?

本文关键字:document write 选择 jQuery Javascript      更新时间:2023-09-26

如何在jQuery或Javascript中选择"document.write"等?样本;

<script> document.write("Taha"); </script>

如何获取此代码中的document.write

脚本

块中的代码不能在jQuery意义上被"选择"。如果要获取脚本块,可以选择与选择任何其他元素大致相同的元素。然后,您可以获取脚本的 text 属性,然后从那里处理它。一个幼稚的例子是:

<script id="theScriptIWant"> document.write("Taha"); </script>
<script type="text/javascript">
    var scriptText = $("#theScriptIWant").text();
    var scriptLines = scriptText.split("'n");
    var codeLines = [];
    for (var i=0; i < scriptLines.length; i++) {
        if (scriptLines[i] == "")
            continue;
        codeLines = codeLines.concat(scriptLines[i].split(";"));
    }
    // Do something with each codeline (like check if it contains your document.write("tada") ) 
</script>
你能用

ID 将文本包装在span中吗?然后,您可以使用 innerText 属性检索文本

<script> document.write('<span id="written">Taha</span>') </script>
<script>
    document.getElementById('written').innerText;
</script>

JSBin 示例

**编辑**

基于 html 元素的其他示例:

HTML元素可以使用getElementsByTagName检索,该将检索特定类型的所有元素作为HTMLCollection。然后,可以循环遍历此集合中的所有元素并获取 innerText 属性。

还有其他选项可以使用,例如getElementsByClassName,它将检索具有某个CSS类的所有元素。

在此示例中,我使用 document.write 编写 3 个跨度(不带 id(,然后如上所述检索它们。

<script> document.write('<span>Taha First</span>') </script>
<script> document.write('<span>Taha Second</span>') </script>
<script> document.write('<span>Taha Third</span>') </script>
<script>
    var htmlColl = document.getElementsByTagName('span');
    for (var i=0; i< htmlColl.length; i++){
        alert(htmlColl[i].innerText);
    }
</script>