Форма отправки при нажатии введите в Textarea
Я пробовал различные методы, чтобы получить форму для отправки при нажатии клавиши ввода. Я знаю, что это работает с полем ввода, но поскольку это будет комментарий, это должна быть текстовая область.
Это то, что у меня есть для отправки формы с помощью кнопки.
$('.messageSubmit').live('click', function(){
var name = $(this).siblings('.messageTextarea').val();
var theid = $(this).attr('data-the_id');
var dataString = name;
$.ajax({
dataType: 'json',
url: "https://api.instagram.com/v1/media/"+$(this).attr('data-the_id')+"/comments?"+hash,
type: "POST",
data: "text="+dataString,
success: function(data) {
// finish load
console.log(data, dataString, 'fail');
},
error: function(data) {
var username = JSON.parse(localStorage.getItem('iguser'));
var profilepic = JSON.parse(localStorage.getItem('iguserimg'));
//console.log(data, dataString, 'succ');
$('.box[data-the_id="' + theid + '"]').children('.postMessage').children('.messageComments').append('<li><img class="commentUserImg" src="' + profilepic + '"><div class="commentUser">' + username + '</div><div class="commentText">' + dataString + '</div></li>');
$('.messageTextarea').val(''); // Remove comment from TextArea
}
});
return false;
});
Работает так, как должно. Я хочу удалить кнопку отправки и просто отправить форму, когда пользователь нажимает клавишу ввода. Я знаю, что некоторые люди советуют против этого, но пользователи на этом веб-сайте будут привыкать к входу с Facebook и тому подобное.
Я попробовал такие методы в этом, но это, похоже, не работает.
$('.messageTextarea').keydown(function() {
if (event.keyCode == 13) {
this.form.submit();
return false;
}
});
Вот мой код формы
<form>
<textarea class="messageTextarea" onfocus="if(this.value==this.defaultValue)this.value=\'\';" onblur="if(this.value==\'\')this.value=this.defaultValue;">Write your comment here...</textarea>
<input type="submit" data-the_id="' + theid + '" name="submit" class="messageSubmit" id="submit_btn" value="Submit your comment">
</form>
Любая помощь будет отличной. Кроме того, если кто-нибудь знает, как добавить функцию if, которая будет препятствовать отправке формы с текущим значением по умолчанию в Textarea, это было бы здорово. В настоящее время, с тем, как настроена текстовая область сейчас, если вы просто нажмете «отправить», она будет отправлятьНапишите свой комментарий здесь ...
Спасибо
РЕДАКТИРОВАТЬ: Может ли обходной путь быть ... Имея кнопку для отправки, как обычно, но она скрыта, и когда вы нажимаете Enter, он вызывает вызов для этой кнопки? Но потом ... Я столкнулся с той же проблемой ввода, ничего не делая в текстовой области, кроме перехода на новую строку ...