-1

こんにちは私は3つの入力を持つ基本的なフォームにテキストエリアを変換するのに役立つ必要があります...ユーザーはフォームに姓、名字、電子メールを入力することができます。現在私のコードにはクロムストレージに保存されているテキストエリアがあります。これをフォームに変換しても、それを保存してクロムストレージで取得するのを手伝ってください。どうもありがとう。テキストエリアをフォームに変換するにはどうすればよいですか?

HTML:

<meta charset="UTF-8"> 
    <title>Document</title> 
    <script src="script.js"></script> 
</head> 
<body> 
    <textarea id="saveLine"></textarea> 
    <input type="button" id="save" value="Save Line"> 

    <input type="button" id="get" value="Get Saved Line"> 

JSファイル:(これはオプションですが)

window.onload = function() { 
    document.getElementById('save').onclick = function() { 
    var value = document.getElementById('saveLine').value; 

    chrome.storage.sync.set({'myLine': value}, function() { 
     alert('success'); 
    }); 
}; 

document.getElementById('get').onclick = function() { 
    chrome.storage.sync.get('myLine', function(data) { 
     alert(data.myLine); 
    }); 
} 
} 
+1

なぜtextarea要素が別の名前、姓および電子メール入力要素ではなく、なぜですか? – traktor53

+1

あなたの実際の質問は何ですか?あなたはあなたが "必要とする"ことを述べましたが、実際に質問をしていないか、*あなたの*特定の問題がどこにあるかを説明しました。 [なぜ誰かが私を助けることができますか?実際の質問ではありませんか?](http://meta.stackoverflow.com/a/284237) – Makyen

+0

@ Traktor53これはもともと私が修正したドラフトコードでしたが、私はそれをフォームに変更するのに苦労しています。 –

答えて

0

単にaction属性でform要素にHTML入力/ボタンの/ etcを包みます。この場合は、少なくとも1つのボタンをtype="submit"に変更することも必要です。あなたはにそれをしたいので、場合

<form id="some_form" action="/some/endpoint"> 
    <textarea id="saveLine"></textarea> 
    <input type="submit" id="save" value="Save Line"> 
    <input type="button" id="get" value="Get Saved Line"> 
</form> 

あなたはおそらく、あなたのJSを経由して、フォームのサブミットを処理したいと思うもその後、フォームsubmitハンドラをハイジャックする必要があります、クロームストレージに提出します。

var form = document.getElementById('some_form') 
form.addEventListener('submit', function (event) { 
    console.log('Form elements', form.elements) 
    event.preventDefault() 
    // Do your Chrome Storage stuff here with form elements 
}) 
関連する問題