2016-10-08 13 views
0

JavaScriptで少し問題があります。 私はギャラリーページをやっています。関数 "comment"を呼び出す "Onclik"というアイコンがあります。"値"を取得して別の関数で使用する

function comment() { 

var div = document.getElementById("commentdiv"); 
var input = document.createElement("textarea"); 
var btn = document.createElement("BUTTON"); 
var t = document.createTextNode("ADD"); 

input.name = "post"; 
input.maxLength = "5000"; 

btn.appendChild(t); 
document.body.appendChild(btn); 

div.appendChild(input); 
div.appendChild(btn); 
btn.style.width='100%'; 
btn.style.height='30px'; 

input.style.width='100%'; 
input.style.height='150px'; 

msn = input.value; 
btn.onclick=write; 

} 

しかし、問題があります。 input.valueを実行すると、入力に何もありません。私はmsnに、人々がテキストエリアに書き込むテキストが必要です。 2番目の関数を呼び出すと、空であるために書き込まれません。

function write() { 


document.getElementById("commentdiv").innerHTML += + msn ; 

} 

ありがとうございました:)

答えて

1

をエレメントが作成されたばかりのときmsn値が取られたので、あなたはあなたがグローバル変数としてmsnを使用する必要がtextarea

function write() 
{ 
    document.getElementById("callate").innerHTML += document.querySelector("#commentdiv textarea").value ; 
} 
+0

これが問題でした。どうもありがとうございました。 :) – Nogus

0

から新鮮な値を取る必要があります。またmsn

var msn; 
function comment() { 
    msn = input.value; 
} 

function write() { 
    document.getElementById("commentdiv").innerHTML += msn; 
} 
0

+左を削除するwrite機能を変更します。

function write() { 
    document.getElementById("commentdiv").innerHTML += input.value ; 
} 
関連する問題