javascript - 将光标放在文本框中 Angularjs addmode

标签 javascript angularjs

关于这个site单击“添加新”时,我希望将光标放置在第一个文本框(酒店名称)中。 “添加新”按钮下的 cshtml 代码是

 <p data-ng-hide="addMode"><a data-ng-click="toggleAdd()" href="javascript:;" class="btn btn-primary">Add New</a></p>

toogleAdd()函数如下:

     $scope.toggleAdd = function () {


        $("#txtHotelName").focus();
        $('#txtHotelName').select();


        $scope.action = "Create";
        $scope.addMode = !$scope.addMode;
        $("#txtHotelName").focus();

    };

focus() 和 select() 不起作用,所以我把它们去掉了。如果有任何建议,我将不胜感激。

最佳答案

超时是正确答案。我将以下代码放在末尾 切换添加功能:

setTimeout(function () {

            $("#txtHotelName").focus();

        }, 1000);

我认为这不会起作用,但它确实起作用了。奇怪的是,向文本框添加文本不需要超时才能工作,但将焦点放在那里却需要超时。 感谢所有回复的人。

关于javascript - 将光标放在文本框中 Angularjs addmode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41059462/

相关文章:

angularjs - 重新排列顺序 : AngularJs

javascript - 为什么我的按钮不再调用该函数?

javascript - Dalek JS - 测试中的 For 循环

javascript - 动画形式,如何检查页面刷新时的输入值?

javascript - 在 Canvas 边界限制内移动对象

indexing - Angularjs - 如何有条件地在 <tr> 中应用不同的类来重复指令

javascript - 如何以一种语言(德语)显示嵌入 osm map ?

$http.get 上的 Javascript 回调

javascript - angularjs:为什么 ng-click 似乎不评估 {{}}

javascript - ng-options 在选择中不起作用