2016-08-29 26 views
0

我最近搜索了很多次,並沒有找到任何好的答案或正確的解決方案。我想創建一個指令來控制我的表單輸入變化模糊。它用於編輯工具內的用戶設置。AngularJS:模糊輸入變化的手錶形式

所以用戶是輸入欄裏面點擊來自一個名爲「generall」的形式,直到這裏沒什麼應該發生,如果用戶正在編輯(打字)也沒什麼應該發生。現在用戶點擊外部(模糊)字段,指令應該調用一個像'updateSettings'這樣的函數,併爲它們提供表單名稱(通用)以及字段中的所有名稱+值。

看起來像那樣var vars = { formName: 'generall', fields: {ALLFIELDS} }

我想,媒體鏈接與功能:

return { 
    require: "form", 
    link: function(scope, element, attrs){z 
    var cb = $parse(attrs.formOnChange); 
    element.on("change", function(){ 
     cb(scope); 
    }); 
    } 
}; 

這裏是我的代碼:https://plnkr.co/edit/KrjtJVCS9kxRckMH3Mv6?p=preview

+0

你能建立一個jsfiddle/jsbin那個代表導致最小的問題? –

+0

@ ti2005 – muuvmuuv

回答

0

使用

element.on("blur",function(){}) 

樣本指令

app.directive("myDirective", function ($rootScope) { 

    return { 
     controller: function ($scope) { 

     }, //end of controller 
     restrict: 'A', 
     // element must have ng-model attribute. 
     require: 'ngModel', 
     link: function ($scope, ele, attrs, ngModel, $rootScope) { 

      ele.on('blur', function() { 
       //write functionality here 

      }); 

     }, //end of link function 
    } //end of return 
}); //end of myDirective 
+0

我把它粘貼到我的代碼中(用HTML鏈接上面),但它仍然不起作用。也許它做了一些與我的應用程序錯誤? – muuvmuuv