当我通过 Javascript 初始化时,AngularJS $scope.model
是未定义的
<button ngf-select="upload($file)">Выбрать</button>
<span id="photoSpan"></span>
<input type="text" id="photo" name="uploadPhoto" ng-model="uploadPhoto">
这是我的初始化代码:
document.getElementById("photo").value = fileName;
$("#photoSpan").text(resp.config.data.file.name);
console.log('Success ' + resp.config.data.file.name + 'uploaded. Response: ' + resp.data);
所以
createExpositionResource.photo = $scope.uploadPhoto;
console.log('--------------'+$scope.uploadPhoto);
返回 undefined
。
我做错了什么?
谢谢!
最佳答案
What am I doing wrong?
使用 Jquery:看看这个问题:"Thinking in AngularJS" if I have a jQuery background?
你应该替换
document.getElementById("photo").value = fileName;
通过
$scope.uploadPhoto = fileName;
简短说明:如果您更新 Angular 变量(例如:document.getElementById("photo").value = fileName;
), Angular 将不知道您做了它。您的代码更糟。对于 Angular 来说,$scope
中的是他的“可信数据源”。这意味着 Angular 还可以使用 Jquery 清除您输入的值。
关于javascript - AngularJS $scope.model 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35225331/