Enterキーで値がsubmitされるtextareaのdirective
はじめまして。質問させていただきます。現在、angularを採用したprojectで以下のような、textareaをdirectiveをつくり実装しています。ベーシックなtextareaとは異なり、値を入力してEnterキーを押すとformをsubmitさせる処理を与えたいと思っています。試行錯誤していますが解決できず困っています。inputでは文章がかなりはみ出てしまい、どうしてもtextareaでsubmitさせたいです。どうかよろしくお願いいたします
===
/assets/javascripts/directives/resizeTextarea.coffee
mod.directive 'resizeTextarea', ->
{
restrict: 'A'
require: '?ngModel'
link: (scope, element, attrs, ngModel) ->
HEIGHT = 25
el = angular.element(element[0])
el.css 'lineHeight', HEIGHT + 'px'
el.css 'height', HEIGHT + 'px'
resize = (e) ->
textHeight = e.target.scrollHeight
height = ~ ~(textHeight / HEIGHT) * HEIGHT
el.css 'height', height + 'px'
return
el.on 'input', resize
scope.$watch attrs.ngModel, (value) ->
if value == undefined
return
textHeight = el[0].scrollHeight
height = ~ ~(textHeight / HEIGHT) * HEIGHT
el.css 'height', height + 'px'
return
ngModel.$parsers.unshift (viewValue) ->
viewValue
return
}