将ng-model与html DOM中的计算字段绑定的问题

时间:2015-05-13 10:59:07

标签: javascript angularjs

表单元素

<input  ng-model="student.person.firstName" type="text"/>
    <textarea ng-model="student.person.photo" id="imageText" >
    </textarea>
<input type="file" ng-model="" id="imageUpload" onchange="getbase64();"/>

base64()方法设置<textarea>的文字。 现在JS代码

$scope.saveInfo = function(){    
    console.log($scope.student.person.firstName);
    console.log($scope.student.person.photo);
};

我没有亲自得到任何东西。而person.firstName让我获得了名字的价值。 是否存在绑定问题,因为我使用带有base64内容的js设置<textarea>的值

http://plnkr.co/edit/cElm8PD3hNzEWBNesegW?p=catalogue plunker链接。

1 个答案:

答案 0 :(得分:0)

您需要手动触发更改事件(在fileReader.onload中),例如:

 var element = document.getElementById('imageText');
 if ("createEvent" in document) {
    var evt = document.createEvent("HTMLEvents");
    evt.initEvent("change", false, true);
    element.dispatchEvent(evt);
 } else
    element.fireEvent("onchange");

work plunker:http://plnkr.co/edit/QGCl6ly5HMmAoDwyt4YO?