从输入元素 PHP 和 JavaScript 混合中获取值


getting values from a input element php and javascript mixture

大家好 我正在尝试制作一个脚本,该脚本逐步浏览列表并为查询返回的每条记录appends分数。 下面的代码是PHP中发生的事情; 创建一个input,我在其中存储将在string中处理的数字; 下面是一个显示文本scorespan元素和另一个包含实际span得分。最后,有一个echo展示了生成的值,如下所示: score_pad0, score_pad1, score_pad2

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";

我想从 javascript 中的fetch_array中获取值。我使用以下
代码 var array_id = document.getElementById('fetch_array');但是当我运行它时,这将返回 null。我做错了什么?我试图通过添加.value扩展名来读出它。但它只是让我的JavaScript代码崩溃了。

加载事件由 A 函数触发

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);
}
}

当你的javascript代码被执行时,你的DOM可能还没有准备好。作为试用,请<body onload='myFunction()'>并将您的document.getElementById包裹在myFunction()

如果您希望有多个处理程序用于 onload 事件,则需要使用 addEventListener非IE浏览器的DOC和IE的attachEvent

如果你可以使用jQuery,那么把你的javascript代码包装起来。

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

在 SO 上检查此问题

使用

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