だから私はテキストフィールドを持っています(
<input type="text"/>
)ユーザーがEnterキーを押したときに関数を実行したい/送信したい。
これで、onSubmit が最適なソリューションのように見えます。悲しいことに、これには(私の知る限り)フォームが必要であり、そのフォームは送信時にページをリロードします。そして、私が好きではない余分なコードを追加します。onKeyPress も試しましたが、これはユーザーが何かを入力するたびに反応します (前の質問を参照)。関数自体で「Enter」キーを探してみましたが、うまくいきませんでした。また、誰かがフィールドに何かを入力するたびに関数を実行したくありません。
要約すると、ユーザーがテキストフィールドを送信したときに関数を実行したいと思います。どうすればいいですか?フォームを使用せずに「onSubmit」機能を使用する方法はありますか? 何かにコメントすると、Facebook などのページは何をしますか?
実際にFacebookのコメント機能を作ろうとしています。これは私がこれまでに持っているコードです:
var facebook_footer = '<button onClick="fbLike(\''+post_id+'\')"> Like </button> <form onSubmit="fbComment(\''+post_id+'\')"><input type="text" id="' + post_id + '" /></form>';
function fbComment(post_id) {
var message = document.getElementById(post_id).value;
console.log('Trying to comment on: ' + post_id);
FB.api('/'+ post_id +'/comments?message=' + message, 'post', function(response) {
if (!response || response.error) {
alert('Error occured. ID: ' + post_id);
} else {
alert('Great! It worked. ID: ' + post_id);
}
});
}
FBapi についてある程度の知識があり、ここでの標準的な手順を知っているかもしれません。
とにかく、答えてくれてありがとう。