0

我有一个非常愚蠢的问题。我想更改表格单元格的内容。我的代码:

        var x = ajax('...');

    alert(x);
    alert(document.getElementById(tdId).innerHTML);

    document.getElementById(tdId).innerHTML = x;

“x”具有正确的内容 => 所以 ajax 正在工作第二个 alert(...) 也提供了正确的(实际)内容。但是当我想在单元格中写 x 时,什么也没有发生。没有错误,什么都没有……

我在这里检查了一些类似的问题,但没有成功。

我真的不知道,我可以进一步测试什么来理解这个问题。你有想法吗?非常感谢你的帮助!

4

3 回答 3

1

我有解决办法!!!

这很愚蠢:我通过单击 td 更改了 td 的内容...但是新内容有一个按钮可以再次单击...现在,firefox 从头开始​​并再次显示“第二个”内容。 ..

那很难!:-)

但是,我真的非常非常感谢您的帮助!很抱歉浪费您的时间!:(

于 2013-10-06T19:10:14.807 回答
0

your code is correct, but make sure this element is not hidden (with display: none or visibility: hidden, for example). if you set a default value in the HTML file, will it appear?

you can also make a test adding the content of x to another element. try document.body.innerHTML += x or even replace x to a string literal such as "this is a test".

于 2013-10-06T18:30:35.230 回答
0
var x = "Hello World";
var td = document.getElementById("myId");
var text = document.createTextNode(x);
td.appendChild(text);

如果您的脚本位于页面顶部,则当您尝试运行 javascript 函数时,DOM 尚未完成加载。

确保在 DOM 加载后您的 Javascript 正在运行:

window.onload += function(){
    var x = "Hello World";
    var td = document.getElementById("myId");
    var text = document.createTextNode(x);
    td.appendChild(text);
}; 

或者,将您的脚本文件移动到页面底部。(第一种更推荐)

于 2013-10-06T18:20:37.223 回答