0

私は非常に愚かな問題を抱えています。表のセルの内容を変更したいと思います。私のコード:

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

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

    document.getElementById(tdId).innerHTML = x;

「x」には適切なコンテンツがあります => ajax が機能しているため、2 番目のアラート (...) も適切な (実際の) コンテンツを提供します。しかし、セルに x を書きたいと思っても、何も起こりません。エラーなし、何も...

ここで同様の問題をいくつか確認しましたが、成功しませんでした。

問題を理解するためにさらに何をテストすればよいか、まったくわかりません。アイデアはありますか?助けてくれてどうもありがとう!

4

3 に答える 3

1

私は解決策を持っています!!!

これは非常にばかげています: td をクリックして td のコンテンツを変更しました... しかし、新しいコンテンツにはもう一度クリックするボタンがあります... 今、firefox は最初から開始し、「2 番目の」コンテンツを再び表示します。 ..

それは難しいです!:-)

しかしながら、本当にお世話になりました!お時間を無駄にして申し訳ありません!:(

于 2013-10-06T19:10:14.807 に答える
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 に答える
0

コードは正しいですが、この要素が非表示になっていないことを確認してください (たとえば、display: none または visibility: hidden を使用)。HTML ファイルにデフォルト値を設定すると表示されますか?

のコンテンツxを別の要素に追加するテストを行うこともできます。「これはテストです」などの文字列リテラルを試し document.body.innerHTML += xたり、置き換えたりしてください。x

于 2013-10-06T18:30:35.230 に答える