javascript - Angularjs 输入类型 = 文件不控制台数据

标签 javascript jquery angularjs

嗨,我是 Angular js 新手,我想尝试在 html 中获取我的 input type = "file" 的数据。但是当我控制台它时,它只是说未定义

html

   <input type="file" ng-model="data.img" ng-click="upload()"/>

js

   $scope.upload = function() {
                console.log($scope.data.img)

            }

最佳答案

ng-model 不支持文件类型输入。需要使用这样的指令手动将值设置为 ngModel

.directive("filesInput", function() {
  return {
    require: "ngModel",
    link: function postLink(scope,elem,attrs,ngModel) {
      elem.on("change", function(e) {
        var files = elem[0].files;
        ngModel.$setViewValue(files);
      })
    }
  }
})

像这样调用指令

<input type="file" files-input ng-model="data.img" ng-click="upload()"/>

现在检查控制台

关于javascript - Angularjs 输入类型 = 文件不控制台数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43626770/

相关文章:

javascript - Node : using chai's expect. to.throw 接受参数的函数

javascript - 使多个 AJAX 调用 $.when.apply($, array) 无法正常工作

java - 无法使用 jQuery 检索 json 数据

javascript - Froala WYISWYG编辑器未显示工具栏按钮

javascript - Angular 1.5.x - 指令未触发

javascript - 选择超链接内的标签问题

php - JavaScript - 基本 URL 重写 + 创建历史记录

javascript - Jquery,当类不是第一个时递增类正则表达式

jquery - 侧面菜单(帮助),onClick() 打开(但我希望它在菜单外的其他位置单击时关闭

javascript - 在angularjs中注入(inject)依赖项的可维护方式