concat выбранная опция и ввод текста в AngularJS контроллер

0

Я работаю с приложением AngularJS. Я пытаюсь получить доступ к выбранной опции из раскрывающегося списка и ввода текста в контроллере. Где я не могу получить доступ к выбранному параметру в контроллере, а также я хочу объединить выбранную опцию с текстом ввода.

HTML

<select ng-model="countSelector" 
        ng-change="changeCount('{{countSelector}}')"
        ng-options="country.name for country in countries">
</select>
<input  type="text" 
        placeholder="Mobile Number"
        ng-model="MobileNumber"/>
<button class="button button-block button-balanced"
        ng-click="signUp(MobileNumber , countSelector)">
            Verify
</button>

контроллер

$scope.countries = [ {
    name: "India",
    dial_code: "+91",
    code: "IN"
}, {
    name: "Israel",
    dial_code: "+972",
    code: "IL"
}, {
    name: "Afghanistan",
    dial_code: "+93",
    code: "AF"
}, {
    name: "Albania",
    dial_code: "+355",
    code: "AL"
}, {
    name: "Algeria",
    dial_code: "+213",
    code: "DZ"
}, {
    name: "AmericanSamoa",
    dial_code: "+1 684",
    code: "AS"
}]

$scope.signUp = function(MobileNumber, countSelector){ 
    var Mobile = MobileNumber;
    console.log(Mobile);
    var code = countSelector;
    console.log(countSelector);
};
  • 0
    Предоставьте свой jsfiddle
Теги:

3 ответа

1
Лучший ответ

Попробуйте этот фрагмент.

var myApp = angular.module('myApp',[]);

myApp.controller('GreetingController', ['$scope', function($scope) {
  
$scope.countries = [ {
    name: "India",
    dial_code: "+91",
    code: "IN"
}, {
    name: "Israel",
    dial_code: "+972",
    code: "IL"
}, {
    name: "Afghanistan",
    dial_code: "+93",
    code: "AF"
}, {
    name: "Albania",
    dial_code: "+355",
    code: "AL"
}, {
    name: "Algeria",
    dial_code: "+213",
    code: "DZ"
}, {
    name: "AmericanSamoa",
    dial_code: "+1 684",
    code: "AS"
}]

$scope.signUp = function(MobileNumber, countSelector){ 
    var code = countSelector;
    console.log(countSelector);
    var Mobile = MobileNumber;
    console.log(countSelector.dial_code + Mobile);
};
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp">
    <div ng-controller="GreetingController">
<select ng-model="countSelector" 
        ng-change="changeCount('{{countSelector}}')"
        ng-options="country.name for country in countries">
</select>
<input  type="text" 
        placeholder="Mobile Number"
        ng-model="MobileNumber"/>
<button class="button button-block button-balanced"
        ng-click="signUp(MobileNumber , countSelector)">
            Verify
</button>
  </div>
</div>
0

для доступа к названию страны попробуйте сделать это (поскольку это объект):

<select ng-model="countSelector" 
    ng-change="changeCount('{{countSelector}}')"
    ng-options="country.name for country in countries">
</select>
<input  type="text" 
    placeholder="Mobile Number"
    ng-model="MobileNumber"/>
<button class="button button-block button-balanced"
    ng-click="signUp(MobileNumber , countSelector.name)">
        Verify
</button>
<div>{{countSelector.name}}-{{MobileNumber}}</div>
0

вы можете получить доступ к выбранному параметру через ng-model="countSelector" так что просто используйте $scope.countSelector тогда вы можете согласиться с $scope.MobileNumber

Ещё вопросы

Сообщество Overcoder
Наверх
Меню