无法在angularjs中获取textarea值

前端之家收集整理的这篇文章主要介绍了无法在angularjs中获取textarea值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的plnkr: http://plnkr.co/edit/n8cRXwIpHJw3jUpL8PX5?p=preview你必须点击一个li元素,将出现窗体。输入随机字符串并点击“添加通知”。而不是textarea文本,你会得到未定义。

标记

<ul>
    <li ng-repeat="ticket in tickets" ng-click="select(ticket)">
         {{ ticket.text }}
    </li>
</ul>
<div ui-if="selectedTicket != null">
     <form ng-submit="createNotice(selectedTicket)">
        <textarea ng-model="noticeText"></textarea>
        <button type="submit">add notice</button>
    </form>
</div>

JS部分:

$scope.createNotice = function(ticket){
   alert($scope.noticeText);
}

返回’undefined’。我注意到,这不工作时使用ui-if的angular-ui。任何想法为什么这不工作?如何解决

你的问题在于ui-if部分。似乎angular-ui为该指令中的任何内容创建了一个新的范围,所以为了访问父范围,你必须这样做:
<textarea ng-model="$parent.noticeText"></textarea>

代替

<textarea ng-model="noticeText"></textarea>

猜你在找的Angularjs相关文章