php
  • javascript
  • html
  • 2012-06-14 44 views 1 likes 
    1

    大家好我想製作一個腳本,通過一個列表和appends步驟查詢返回的每個記錄的分數。下面的代碼是PHP中發生的事情;創建一個input,我在string中存儲將要處理的號碼;在下面有一個span元素,顯示文本score和另一個span包含實際分數。最後還有,展示看起來像產生的值的echoscore_pad0, score_pad1, score_pad2從輸入元素php和javascript混合獲取值

    echo "<input type='hidden' id='fetch_array' value=".$score_board." />"; 
    echo "<span>score: </span><span id='score_pad$score_board'></span><br />"; 
    echo "score_pad$score_board"; 
    

    我想抓住從fetch_array JavaScript中的價值。我使用以下代碼:
    var array_id = document.getElementById('fetch_array');但是,當我運行它時,它會返回null。我究竟做錯了什麼?我試圖通過添加.value擴展名來讀出它。但它只會崩潰我的JavaScript代碼。

    onload事件是由一個功能觸發

    function initialize(numbers_rows) 
    { 
    for(var i=0; i < numbers_rows; i++) 
    { 
        var node=document.createElement("span"); 
        node.id="scoreLabel"; 
        document.getElementById("score_pad"+array_id).appendChild(node); 
    } 
    } 
    
    +0

    你確定你是在試圖訪問'的document.getElementById( 'fetch_array')'DOMLoad後?你能粘貼你的完整代碼嗎? – Tamil

    +0

    @Tamil我曾經在身體中使用過onload事件嗎?我不是一個JavaScript專家:) –

    +0

    雅有可能您的JavaScript代碼執行的時間您的DOM可能沒有準備好。作爲一個試驗並將您的document.getElementById包裝在myFunction()中,看看會發生什麼。 – Tamil

    回答

    1

    有那個時間你的JavaScript代碼被執行的DOM可能未準備就緒的可能性。作爲嘗試做<body onload='myFunction()'>和包裝你document.getElementByIdmyFunction()

    如果不工作櫃面你想擁有你需要使用IE瀏覽器 addEventListenerDOC非IE瀏覽器和attachEvent onload事件多個處理程序。

    如果你可以使用jQuery然後換你的JavaScript代碼周圍

    $().ready(function() { 
    // Your Code Goes here &Will be executed after DOM is ready 
    }); 
    

    檢查this問題上的SO

    +0

    謝謝你的幫助,我真的很感激。 –

    +0

    @JeffreyKlinkhamer在我曾經是javascript初學者的同一問題上增加了一個有用的鏈接;) – Tamil

    +0

    謝謝我會檢查它:) –

    0

    使用

    var array_id = document.getElementById('fetch_array').value; 
    
    +0

    「我試圖通過添加.value擴展名讀取它,但它只是崩潰了我的JavaScript代碼」在OP – Tamil

    +0

    中明確指定你可以給整個代碼段 –

    +0

    你應該只問原始海報;)我有理由指出,你的答案似乎沒有幫助 – Tamil

    相關問題