एनजी-मॉडल को एनजी-माउसडाउन में पैरामीटर के रूप में कैसे पास करें


मेरे पास इस पृष्ठ पर HTML पृष्ठ है, मैं एनजी-मॉडल के मान को एनजी-माउसडाउन के पैरामीटर के रूप में पास करना चाहता हूं:-

और मेरे पास एचटीएमएल फ़ाइल के संबंध में एक जेएस फ़ाइल है जहां मैं इस फ़ाइल में कोणीय कोड लिखता हूं, मेरे पास एक फ़ंक्शन है जो चेक (सर्चटेक्स्ट) है, मैं इसे माउसडाउन इवेंट पर कॉल करना चाहता हूं लेकिन मुझे सर्चटेक्स्ट पैरामीटर अपरिभाषित के रूप में मिल रहा है,

जावास्क्रिप्ट
/// <reference path="library/angular.js" />


'use strict';

var app = angular.module('demo', ['ngSanitize', 'ui.select']);
app.filter('propsFilter', function () {
 
    return function (items, props) {
        var out = [];

        if (angular.isArray(items)) {
            var keys = Object.keys(props);

            items.forEach(function (item) {
              var itemMatches = false;
                  //itemMatches = true;// when data will populate from database.
                for (var i = 0; i < keys.length; i++) {
                    var prop = keys[i];
                    var text = props[prop].toLowerCase();
                    if (item[prop].toString().toLowerCase().indexOf(text) !== -1) {
                     //  itemMatches = false;
                         itemMatches = true;// when data will populate from database.

                        break;
                    }
                }
              
                if (itemMatches) {
                    out.push(item);
                }
            });
        } else {

            out = items;
        }

        return out;
    };
});

app.controller('DemoCtrl', function ($scope) {
  
    var result = this;
    result.tagTransform = function (newTag) {

        var item = {
            name: newTag


        };

        return item;
    };
    //var str = "January,February,March,April,May,June,July,August,September,October singh";
    //var splittedString = str.split(',');
    var arr = [];
    //splittedString.forEach(function (v) {
    //    arr.push({ name: v });
    //});

    var arr = [
        {
           
            "name": "TCS",
            "Access": "TATA"

        },
        {
          
            "name": "GG",
            "Access": "GOOGLE"

        },

        {
           
            "name": "MS",
            "Access": "Micosoft"

        }
    ];
    result.people = arr;
    result.colors = ['Blue', 'Red'];
    result.selectedPeople2 = result.selectedPeople;

    $scope.check = function (searchText) {
        debugger;
        var Forsecond="";
          var ff = searchText[0];
          var dd = ff.name;
          if(dd==ff.name)
          {
              Forsecond= ff.Access;
          }
          return Forsecond;
   
    }
});

मैंने क्या प्रयास किया है:

मेरे पास इस पृष्ठ पर HTML पृष्ठ है, मैं एनजी-मॉडल के मान को एनजी-माउसडाउन के पैरामीटर के रूप में पास करना चाहता हूं:-

और मेरे पास एचटीएमएल फ़ाइल के संबंध में एक जेएस फ़ाइल है जहां मैं इस फ़ाइल में कोणीय कोड लिखता हूं, मेरे पास एक फ़ंक्शन है जो चेक (सर्चटेक्स्ट) है, मैं इसे माउसडाउन इवेंट पर कॉल करना चाहता हूं लेकिन मुझे सर्चटेक्स्ट पैरामीटर अपरिभाषित के रूप में मिल रहा है,

जावास्क्रिप्ट
/// <reference path="library/angular.js" />


'use strict';

var app = angular.module('demo', ['ngSanitize', 'ui.select']);
app.filter('propsFilter', function () {
 
    return function (items, props) {
        var out = [];

        if (angular.isArray(items)) {
            var keys = Object.keys(props);

            items.forEach(function (item) {
              var itemMatches = false;
                  //itemMatches = true;// when data will populate from database.
                for (var i = 0; i < keys.length; i++) {
                    var prop = keys[i];
                    var text = props[prop].toLowerCase();
                    if (item[prop].toString().toLowerCase().indexOf(text) !== -1) {
                     //  itemMatches = false;
                         itemMatches = true;// when data will populate from database.

                        break;
                    }
                }
              
                if (itemMatches) {
                    out.push(item);
                }
            });
        } else {

            out = items;
        }

        return out;
    };
});

app.controller('DemoCtrl', function ($scope) {
  
    var result = this;
    result.tagTransform = function (newTag) {

        var item = {
            name: newTag


        };

        return item;
    };
    //var str = "January,February,March,April,May,June,July,August,September,October singh";
    //var splittedString = str.split(',');
    var arr = [];
    //splittedString.forEach(function (v) {
    //    arr.push({ name: v });
    //});

    var arr = [
        {
           
            "name": "TCS",
            "Access": "TATA"

        },
        {
          
            "name": "GG",
            "Access": "GOOGLE"

        },

        {
           
            "name": "MS",
            "Access": "Micosoft"

        }
    ];
    result.people = arr;
    result.colors = ['Blue', 'Red'];
    result.selectedPeople2 = result.selectedPeople;

    $scope.check = function (searchText) {
        debugger;
        var Forsecond="";
          var ff = searchText[0];
          var dd = ff.name;
          if(dd==ff.name)
          {
              Forsecond= ff.Access;
          }
          return Forsecond;
   
    }
});

समाधान 1

ऐसे प्रयास करें

एचटीएमएल
<html>
<head>
    <title></title>    
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
    <script>
        var app = angular.module('myapp', []);
        app.controller('myctrl', myfun);
        function myfun($scope) {
            $scope.myTextValue = 'This is textbox';
           
            $scope.check = function (model) { 
                alert(model.myTextValue);// or   alert($scope.myTextValue);
            }
        }
    </script>
</head>

<body ng-controller="myctrl" ng-app="myapp">
    <input type="text" ng-model="myTextValue" ng-mousedown="check(this)" />     
</body>
</html>

コメント

タイトルとURLをコピーしました