将脚本内容作为文本获取

DVD*_*DVD 27 javascript jquery script-tag

我想用jquery打印脚本标签的内容是否可能?

的index.html

<script type="text/javascript">

    function sendRequest(uri, handler)
    {


    }
</script>
Run Code Online (Sandbox Code Playgroud)

alert($("script")[0].???);
Run Code Online (Sandbox Code Playgroud)

结果

function sendRequest(uri, handler)
{


}
Run Code Online (Sandbox Code Playgroud)

Vig*_*ond 21

只需为您的脚本标记添加一个ID:

<div></div>
<script id='script' type='text/javascript'>
    $('div').html($('#script').html());
</script>
?
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/UBw44/

  • 如果您的脚本引用了src,那么它会变得棘手.您可以对脚本源执行ajax调用,或者在页面加载之前使用服务器端来获取它. (6认同)

小智 19

您可以使用本机Javascript来执行此操作!

这将打印文档中第一个脚本的内容:

alert(document.getElementsByTagName("script")[0].innerHTML);
Run Code Online (Sandbox Code Playgroud)

这将打印具有id =>"myscript"的脚本的内容:

alert(document.getElementById("myscript").innerHTML);
Run Code Online (Sandbox Code Playgroud)

  • 将返回`""`for`<script type ="text/javascript"src ="path/path/file.js"> </ script> (16认同)
  • @LuisVargas,不,这也行不通,我认为这是因为这些函数在标签的打开和关闭之间获取元素的内容,而外部脚本没有内容. (2认同)

Abd*_*nim 8

试试这个:

console.log(($("script")[0]).innerHTML);
Run Code Online (Sandbox Code Playgroud)