2013-03-26 90 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

相關問題