簡體   English   中英

ng提交下拉列表和文本區域

[英]ng-submit on dropdown and textarea

嗨,我有以下代碼:

<form ng-submit="ctrl.commitEdit(sign)">
    <input ng-model="sign.Value">
    <input ng-model="sign.Date">
    <textarea ng-model="sign.Comment"></textarea>
    <select ng-model="sign.Property"></select>
    <button type="submit">Save</button>
</form>

使用圍繞組件的表單,我嘗試以兩種方式保存編輯(在表單中,我從控制器調用ng-submit提交一個方法,以保存所做的編輯):

  • 單擊我的按鈕(類型為“提交”)后,它將在表單的ng-submit中調用該函數。 這正常工作! 節省
  • 然后,我還想通過按鍵盤上的“輸入”來保存。 這就是為什么我將ng-submit表單與提交類型的按鈕一起使用的原因。 僅當我更改輸入中的某些內容且焦點在那里時,此方法才有效! 當我在文本區域中更改某些內容並按“ enter”(輸入)時,它會中斷。 當我在下拉菜單中更改某些內容然后按“輸入”時,它將再次打開下拉菜單。

因此,我想以各種方式在輸入,選擇和文本區域上按“輸入”來保存。 我怎樣才能做到這一點?

謝謝

您需要做的就是使用ngKeyup。

https://docs.angularjs.org/api/ng/directive/ngKeyup

只需將其與輸入密鑰代碼13綁定,然后調用您的函數

此外,這是您可以根據自己的目的實施的指令。

app.directive('ngEnter', function() {
        return function(scope, element, attrs) {
            element.bind("keydown keypress", function(event) {
                if(event.which === 13) {
                        scope.$apply(function(){
                                scope.$eval(attrs.ngEnter);
                        });

                        event.preventDefault();
                }
            });
        };

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM