2016-09-10 15 views
1

私はあなたがリンクを挿入できるプロジェクトに取り組んでいます。 リンクのURLとテキストを入力できます。私はその情報を収集するためにプロンプ​​トを使用しました。私はコードを使用すると大括弧内は

document.getElementById(ev.target.id).innerHTML = y + "<a href=" + linkurl + " > + linktext + </a>"; 

は、リンクが表示されますよう:+ linktext + 私はこれをコード化されました。

リンクテキストに、私が入力したテキストを表示させることはできますか?

+1

を逃した - ev.target' 'の値がすでにDOM要素であるので、あなたがする必要はありませんそれをもう一度得る。 – Pointy

答えて

1

変数を使用する場合は、変数を文字列リテラルに入れないでください。それぞれの引用符を入れてください。リテラル文字列です。

document.getElementById(ev.target.id).innerHTML = y + "<a href=" + linkurl + " > " + linktext + " </a>"; 

つまり、文字列をマッシュしてHTMLをつなぎ合わせると、わかりやすいコードになる可能性があります。代わりにDOMメソッドを使用してみてください。

var element = ev.target; 
element.innerHTML = ""; // Erase existing content 
element.appendChild(document.createTextNode(y)); 
var link = document.createElement("a"); 
link.href = linkurl; 
link.appendChild(document.createTexTNode(linktext)); 
element.appendChild(link); 

より冗長ですが、エラーが発生しにくいです。

0
document.getElementById(ev.target.id).innerHTML = y + "" + linktext; 
1

あなたは `getElementByIdを()を`必要はありません。二重引用符" + linktext + "

document.getElementById(ev.target.id).innerHTML = y + "<a href=" + linkurl + " > " + linktext + " </a>"; 
+0

ありがとう! –

+0

実際、私はここで別のエラーを見つける。 '' " + linktext + " ''; '' –