2016-12-07 18 views
-1

私のextraInfo変数がウェブページに表示されない理由を理解できません。エラーはありませんが、id内のクラスは変更できません

情報が正しく取得されています(私はこれをalert()でテストしました)が、返された値でスパンテキストを置き換えない理由がわかりません。

私はPタグでラップして送信しようとしましたが、エラーは出ませんが、それでもテキストは修正されません。私が間違っているつもりです

https://github.com/ralam87/Quote-generator

document.getElementById("source").getElementsByClassName("citation")[0] = extraInfo; 
+0

extraInfoとは何ですか?今はHTMLElementでなければなりません。 HTMLが含まれている場合はtry [0] .innerHTML = extraInfo; – Lain

答えて

0

私はあなたの例を示しました。

注:あなたは.citationクラスで最初の要素に引用を割り当てるしようとしているその時あなただけ引用する前に、ソース要素に値を設定したときに、それが置換されますので、クラスcitationして本要素がないdocument.getElementById("source").innerHTML = author;

これは可能な解決策である

  1. 変化このdocument.getElementById("source").getElementsByClassName("citation")[0] = extraInfo;

  2. document.getElementsByClassName("citation")[0].innerHtml = extraInfo;に既存の <p>内部別の <span> or <div> or <p>要素を作成し、その内部に id=sourceを割り当てる <p id="source">

  3. からidを削除します素子。例えば、<p><span id="source"></span><span id="citation"></span></p>

あなたがdocument.getElementById("source").innerHTML = author + ',';を割り当てるときに、ソース名の後,を持つようにしたい場合。

あなたが私を許可すれば、私はこれも直接あなたに寄付することができます リポジトリ。

関連する問題