Enterボタンをクリックしたことを検出する関数enterkeyを作成しました。問題は、jquery によって作成された入力内にコメントを追加するために、この関数をバインドする必要があることです。どうやってやるの?ありがとうございました!:)
$.fn.enterKey = function (fnc) {
return this.each(function () {
$(this).keypress(function (ev) {
var keycode = (ev.keyCode ? ev.keyCode : ev.which);
if (keycode == '13') {
fnc.call(this, ev);
}
})
})
}
var add_comment = { // add comment
urlRemove : CI_ROOT + 'add_comment/',
run : function() {
add_comment.share('.comment');
},
share : function(obj) {
$(obj).enterKey(function() { // I have to bind this function
var comment = $(this);
if (comment.val() != "") {
$.ajax({
type: "POST",
url: add_comment.urlRemove,
data: "text=" + comment.val() + "&post_id=" + comment.attr('id'),
success: function(html) {
comment.val('');
},
error: function(){
alert('Error on ajax call');
}
});
} else {
return false;
}
});
}
};