2013-03-26 132 views
0

我想知道是否有可能写在JavaScript脚本标记作为参考文件,而不是一些部分与document.getElementById("id")或类似的东西。如何将文本置于脚本标记中的文档内?

例如:我有一个表格,当您在输入中输入值并按下回车键时,它将文本写入使用先前输入值的文档。

现在,我知道它显然会更容易继续,并将其发送到头部带有onSubmit的函数,但通过设置它的方式,如果我可以用这种方式写出它,它的格式更容易。所以,如果有人知道如何实现这一点,请告诉我,谢谢。

<div style="text-align: center; font-size: 15pt; padding-top: 70px;"> 
    <form onSubmit="reveal(this.a.value, this.b.value)"> 
     a = <input name="a"/> 
     b = <input name="b"/> 
    </form> 
    <hr> 
    <script> 
     function reveal(a, b) 
     { 
      [math]a + b = c[math] 
     } 
    </script> 
</div> 

你可以看到我到目前为止在这里。如果有人可以告诉我如何使用脚本标记作为参考将[math]a + b = c[math]写入文档。

澄清尝试结果中:[math]a + b = c[math]代表,我想在文档中放置,截至目前我没有什么建立真正写出来,这就是为什么它只是坐在那里的文本。我希望将它放在脚本标记位置的文档中,这些脚本标记位于函数reveal()的周围。如何将该文本放置在文档中周围脚本标签的位置?

+0

你是什么意思的“脚本标签作为参考”?你想做什么? – 2013-03-26 18:01:24

+1

我不明白你想要做什么。什么是[数学] a + b = c [数学]'? – Mathletics 2013-03-26 18:02:18

+0

我在代码中有一个脚本标记内的函数。我想有效地将​​文本放在那里,而不是找到一个带有id的div元素并替换它的innerHTML,或者类似的东西 – 2013-03-26 18:02:46

回答

1

我相信这是你正在做的事情:找到script标签,该标签具有功能reveal(),然后在script标签之前或之后插入字符串。

如果是的话,那就试试这个:(jQuery是用于简单起见)

var tag = $("script").filter(function() { 
    return /reveal\(\)/.test(this.innerText);  //Find the script tag that has 
});            // the function "reveal()" 

tag.after("[math]a + b = c[math]");    //Insert your text 

    - or - 

$("<span>[math]a + b = c[math]</span>").replaceAll(tag); //Replace it 

Demo


PS:

如果你已经有一个script标签,那么你为什么不只是这样做:

<script> 
    function reveal(){ 
     blah(); 
    } 
    document.write("[math]a + b = c[math]"); //The text will be inserted where 
               //the script tag is located at 
</script> 
+0

这就是我想要发生的事情,第二个,我希望它插入脚本标记。但是,如何才能让它在仅在函数被调用时才显示在那里?如果我将它放在函数中,那么它就会替换整个文档。 – 2013-03-26 18:30:24

+0

@DavidGrabon - 它不会替换整个文档:http://jsfiddle.net/DerekL/cDbGz/1/它会在'script'标签后写入文本。 – 2013-03-26 18:32:40

+0

如果document.write(“”)位于函数之外,但它不打印文本而不等待函数被调用,这不是我想要的,我想要它它打印时,函数调用 – 2013-03-26 18:43:32

相关问题