Как добавить текст в положение курсора textarea с помощью angularjs

Я хочу, чтобы пример кода, чтобы добавить текст в код textarea angularjs, может любой помочь.

Написание SMS с каким-либо настраиваемым полем имени, например {userName} #userName# и т. Д. Это события onclick, когда пользователь нажимает, соответствующий текст должен быть добавлен в позицию курсора в поле textarea.

1 ответ

Проверьте эту ссылку и используйте директиву в своем приложении http://plnkr.co/edit/Xx1SHwQI2t6ji31COneO?p=preview

app.directive('myText', ['$rootScope', function($rootScope) {
 return {
 link: function(scope, element, attrs) {
  $rootScope.$on('add', function(e, val) {
    var domElement = element[0];

    if (document.selection) {
      domElement.focus();
      var sel = document.selection.createRange();
      sel.text = val;
      domElement.focus();
    } else if (domElement.selectionStart || domElement.selectionStart === 0)           {
      var startPos = domElement.selectionStart;
      var endPos = domElement.selectionEnd;
      var scrollTop = domElement.scrollTop;
      domElement.value = domElement.value.substring(0, startPos) + val +        domElement.value.substring(endPos, domElement.value.length);
      domElement.focus();
      domElement.selectionStart = startPos + val.length;
      domElement.selectionEnd = startPos + val.length;
      domElement.scrollTop = scrollTop;
    } else {
      domElement.value += val;
      domElement.focus();
    }

  });
 }
}
}])
Другие вопросы по тегам