【问题标题】:Jade to HTML Undefined fieldJade 到 HTML 未定义字段
【发布时间】:2016-07-27 14:23:53
【问题描述】:

我正在尝试将我为示例找到的一些代码从 Jade 转换为 HTML。一切正常,但我不断从服务器收到此错误“TypeError:无法读取未定义的'under'属性”。我了解发布的值未定义,这就是导致错误的原因。为什么我的 HTML 代码没有正确提交值?

JS...

    var primesApp = angular.module('test', []);

    primesApp.controller('testing', function ($scope, $http) {
    $scope.results = [];
    $scope.submit = function(target) {
      console.log($scope.under) // undefined
      $http.post('/' + 'grabber', {under:$scope.under})
             .then(function(docs)  {
            $scope.results = docs.data.results;
          });
      };
    });



Jade...
form(ng-submit="submit('" + target + "')")
    label(for="under")  
    input(ng-model="under")
    button(type="submit") Submit

HTML...
<form ng-submit="submit('grabber')">
      <input type="text" id="fruit" name="under" ng-model="under" value="apples"/>
      <input type="submit" value="Submit" />
</form>

【问题讨论】:

  • 你确定这不是在抱怨没有“下”吗?
  • 当我记录under的值时,它是未定义的,所以它实际上被发布了,但值为未定义...
  • @lonewarrior556 我添加了 JS 代码以显示我未定义的位置...

标签: javascript html angularjs node.js pug


【解决方案1】:

尝试在表单标签中添加ng-init="under='apples'"value= 不适用于 ng-model

或者你可以在你的控制器中初始化它$scope.under = "apples";

【讨论】:

  • 它起作用了,它在控制台中打印出值,但我认为你是对的......当值进入服务器时,它现在给出了同样的错误。
  • 我还将删除 并添加一个看起来像带有 ng-click="submit('grabber') 的按钮的 div " 否则,您可能需要防止可以独立于您的 Angular ajax 调用提交的表单上的默认值。也许。我从未使用过 ng-submit。
猜你喜欢
  • 2012-07-01
  • 2013-07-22
  • 2014-09-07
  • 1970-01-01
  • 2014-09-03
  • 2019-06-06
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多