gpt4 book ai didi

javascript - 使用输入文本以 Angular 形式发布

转载 作者:行者123 更新时间:2023-11-27 23:53:40 25 4
gpt4 key购买 nike

所以我需要添加列表,但我不能使用按钮和表单。 (不能,因为我使用 Angular 制作单页应用程序)

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

问题

如何对 Angular 说我输入了新列表名称并按了 ENTER?我想要类似的东西:我按 + ,出现输入,我输入列表名称,按 Enter 键,我的 Angular Controller 开始工作(来自输入的 POST 数据),输入文本隐藏。

我的代码

我的+“按钮”:

  <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"
});
}

我的帖子 Angular (runScript 不起作用,但下面的代码很好,我只需要以某种方式对我在输入文本字段中按 Enter 的 Angular 说):

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');
});
}};
}]);

最佳答案

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

<!-- Example: --> 
<input type="text" ng-model="listname" ng-keypress="runScript($event)" .../>

关于javascript - 使用输入文本以 Angular 形式发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32460014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com