Javascript 使用输入文本发布角度

Javascript 使用输入文本发布角度,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,所以我需要添加列表,但我不能使用按钮和表单。(不能,因为我正在使用angular进行单页应用) 所以我有按钮+,当我按下它时会显示输入文本。因此,我想在键入列表名称并按ENTER键后发布(创建新列表),并在输入之后再次隐藏输入 问题 如何对angular说我输入了新的列表名并按了ENTER键?我想要这样的东西:我按下+,显示输入,我输入列表名,点击回车,我的角度控制器开始工作(从输入发布数据),输入文本隐藏 我的代码 我的+“按钮”: 我的angular for post(运行脚本不起作用,但下

所以我需要添加列表,但我不能使用按钮和表单。(不能,因为我正在使用angular进行单页应用)

所以我有按钮+,当我按下它时会显示输入文本。因此,我想在键入列表名称并按ENTER键后发布(创建新列表),并在输入之后再次隐藏输入

问题

如何对angular说我输入了新的列表名并按了ENTER键?我想要这样的东西:我按下+,显示输入,我输入列表名,点击回车,我的角度控制器开始工作(从输入发布数据),输入文本隐藏

我的代码

我的+“按钮”:

我的angular for post(运行脚本不起作用,但下面的代码很好,我只需要告诉angular我在输入文本字段中按了enter键):


问题是您没有在$scope上定义的runScript函数中接收事件对象。将ng keypress=“runScript(e)”更改为ng keypress=“runScript($event)”


是的,你是对的。。但我改为ng keydown=“”。。不过还是谢谢你。
  <a  href="javascript:hideshow(document.getElementById('adiv'))"> <div class="category theme_border_6" style="position: relative; left: 0px; float: left; margin: 10px 10px 10px 10px;  top: 0px;"><div class="name theme_title_color_3"> + </div>

<input type="text" ng-model="listname" id="adiv" ng-keypress="runScript(e)" class="form-control" style="font:24px bold; display: none" placeholder="NEW LIST" />

<div class="count theme_color_4_light"></div>
</div></a>
function hideshow(which){

    if (which.style.display=="none"){
        which.style.display="block";
    which.focus();}

    else
    which.focus();
    $(which).blur(function () {
    which.style.display = "none"
    });
}
myApp.controller('createListController', ['$scope', '$log', '$http','$location',
    function($scope, $log, $http, $location ){

      $scope.runScript = function (e) {
          if (e.keyCode == 13) {
              var list = {
                  name: $scope.listname

              };
              console.log(e);
              $http({
                  method: 'POST',
                  url: 'http://localhost/anydocopy/public/lists',
                  data: list
              })
                  .success(function () {
                      console.log('true');
                      return $location.path('');
                  })
                  .error(function () {
                      console.log('false');
                  });
          }};
    }]);
<!-- Example: --> 
<input type="text" ng-model="listname" ng-keypress="runScript($event)" .../>