2012-09-29 87 views
2

我在http://forkinthecode.net/budget/2012-2013.php`innerText`未定義在Mozilla Firefox

建立一個網站,我已經寫在了投資組合,方案,機構和各目標地址欄谷歌搜索URL打開窗口的腳本來自MySQL數據庫的表。

此腳本適用於Chrome,Safari,IE & Opera,但在我的機器上,當使用Mozilla Firefox時,變量顯示爲「未定義」。

我已經看了一下網頁,並沒有發現任何關於此的信息。

<script type="text/javascript">//<![CDATA[ 

function getPortNews() 
{ 
    portfolio = document.getElementById('portfolio').innerText; 
    static_url = ('http://google.com.au/search?q='); 

    search_url = (static_url + portfolio); 
    window.open(search_url); 

     } 
     //]]></script> 

我是JavaScript新手,請注意有問題的網站和背後的數據庫大約已完成75%。

+1

將'innerText'更改爲'textContent'。或者,如果你真的想支持舊的IE瀏覽器'document.getElementById('portfolio')[document.textContent === null? 'textContent':'innerText']' –

回答

3

無論是下載jQuery和使用:

text() or html() 

,或者如果你堅持用香草JS,使用innerHTML。它有廣泛的支持。但是,如果在結果中獲得html標籤對您來說是個問題,那麼您應該使用Rob W的上述解決方案,該解決方案僅返回實際文本。

+4

jQuery對於這樣的小蒼蠅來說是一個威武的大錘子 –

+0

謝謝Jeremy&Daniel。我確實喜歡我的解決方案,以解決我試圖解決的問題:-) – user1707962

1

標準中沒有innerText屬性,這是什麼讓你咬。

+1

感謝您的建議。 textContext似乎適用於大多數腳本。我仍在調試最後一個目標。 – user1707962

+0

通過將變量&事件處理程序名稱從「目標」更改爲「方案」,可以將其應用於最後一個腳本。 – user1707962

+0

@ user1707962你的意思是[Node.textContent](https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent)not textContext –