Javascript 如何将commonservice文件中对象的值转换为html

Javascript 如何将commonservice文件中对象的值转换为html,javascript,angularjs,Javascript,Angularjs,我的html <div class="col-sm-6"> <div class="form-group" show-errors> <label class="control-label" for="address">Address<span class="error_red">*</span> </label> &

我的html

<div class="col-sm-6">
    <div class="form-group" show-errors>
        <label class="control-label" for="address">Address<span
                          class="error_red">*</span>
        </label>
        <input type="text" id="contact_address" ng-change="vm.addGoogleAddress(
            'contact_address', vm.contact.addresses[0],'contact')" name="contact_address"
             ng-model="vm.contact.address" class="form-control gmaps"  
             required autocomplete="off" placeholder="Enter a location">
        <div ng-messages="vm.form.contactForm.contact_address.$error" role="alert">
          <p class="help-block error-text" ng-message="required">Address is required.</p>
        </div>
    </div>
</div>
<div class="col-sm-6">
    <div class="form-group">
        <label class="control-label" for="city">City</label>
        <input name="city" type="text" disabled="disabled" ng-model="cityname" 
                                               id="city" class="form-control">
    </div>
</div>
 function addGoogleAddress(id, data, scope) {
     var places = new google.maps.places.Autocomplete(document.getElementById(id));
     google.maps.event.addListener(places, 'place_changed', function () {
         var place = places.getPlace();
         if (place && place.address_components) {
             for (var i = 0; i < (place.address_components.length); i++) {
                 if (place.address_components[i].types[0] == "locality") {
                     data.city.key = "1001";
                     data.city.name = place.address_components[i].long_name.toString();
                     $rootScope.cityname = data.city.name;
                 }
             }
         }

地址*
需要地址

城市
我的公共服务

<div class="col-sm-6">
    <div class="form-group" show-errors>
        <label class="control-label" for="address">Address<span
                          class="error_red">*</span>
        </label>
        <input type="text" id="contact_address" ng-change="vm.addGoogleAddress(
            'contact_address', vm.contact.addresses[0],'contact')" name="contact_address"
             ng-model="vm.contact.address" class="form-control gmaps"  
             required autocomplete="off" placeholder="Enter a location">
        <div ng-messages="vm.form.contactForm.contact_address.$error" role="alert">
          <p class="help-block error-text" ng-message="required">Address is required.</p>
        </div>
    </div>
</div>
<div class="col-sm-6">
    <div class="form-group">
        <label class="control-label" for="city">City</label>
        <input name="city" type="text" disabled="disabled" ng-model="cityname" 
                                               id="city" class="form-control">
    </div>
</div>
 function addGoogleAddress(id, data, scope) {
     var places = new google.maps.places.Autocomplete(document.getElementById(id));
     google.maps.event.addListener(places, 'place_changed', function () {
         var place = places.getPlace();
         if (place && place.address_components) {
             for (var i = 0; i < (place.address_components.length); i++) {
                 if (place.address_components[i].types[0] == "locality") {
                     data.city.key = "1001";
                     data.city.name = place.address_components[i].long_name.toString();
                     $rootScope.cityname = data.city.name;
                 }
             }
         }
函数addGoogleAddress(id、数据、范围){
var places=new google.maps.places.Autocomplete(document.getElementById(id));
google.maps.event.addListener(places,'place_changed',函数(){
var place=places.getPlace();
if(放置和放置.地址\u组件){
对于(变量i=0;i<(place.address\u components.length);i++){
if(place.address\u components[i].types[0]=“locality”){
data.city.key=“1001”;
data.city.name=place.address_components[i].long_name.toString();
$rootScope.cityname=data.city.name;
}
}
}

我想显示我搜索结果的
cityname
,但我正在将其添加到我的html中,请任何人提供帮助。谢谢。

如果您从
addGoogleAddress
返回值并使用它会更好,所有这些都在
控制器中
并将其分配给con的
$scope
this
特罗勒自己

更新
让我们考虑一下< <代码> MyCuulter < /C> >:

//your controller
***.controller('myControler',['$scope','myService',...,function($scope,myService,...){
       $scope.cityName = myService.addGoogleAddress(...);
}]);
<div class="col-sm-6" ng-controller="myController">
.....
因此,您正在使用
myService
添加地址并获取返回的值,并将其分配给
$scope
,现在如果您保持html的原样,它应该可以工作了

p.S: 如果您没有将控制器与UI连接,请执行以下操作:

//your controller
***.controller('myControler',['$scope','myService',...,function($scope,myService,...){
       $scope.cityName = myService.addGoogleAddress(...);
}]);
<div class="col-sm-6" ng-controller="myController">
.....

.....

最好是从
addGoogleAddress
返回值并使用它,所有这些值都在
控制器
中,并在那里分配给控制器本身的
$scope

更新
让我们考虑一下< <代码> MyCuulter < /C> >:

//your controller
***.controller('myControler',['$scope','myService',...,function($scope,myService,...){
       $scope.cityName = myService.addGoogleAddress(...);
}]);
<div class="col-sm-6" ng-controller="myController">
.....
因此,您正在使用
myService
添加地址并获取返回的值,并将其分配给
$scope
,现在如果您保持html的原样,它应该可以工作了

p.S: 如果您没有将控制器与UI连接,请执行以下操作:

//your controller
***.controller('myControler',['$scope','myService',...,function($scope,myService,...){
       $scope.cityName = myService.addGoogleAddress(...);
}]);
<div class="col-sm-6" ng-controller="myController">
.....

.....

您在
addeventlistener
中的参数数量不正确:

addeventlistener.google.maps.event.addListener(places, 'place_changed', function () {...}
应该是这样的:

addeventlistener.addListener('place_changed', function() {...}
范例

举个例子:

var autoCompletePlaces = new google.maps.places.Autocomplete(input);

autoCompletePlaces.addListener('place_changed', function() {          
   var place = autoCompletePlaces.getPlace();          
}

addeventlistener
中的参数数量不正确:

addeventlistener.google.maps.event.addListener(places, 'place_changed', function () {...}
应该是这样的:

addeventlistener.addListener('place_changed', function() {...}
范例

举个例子:

var autoCompletePlaces = new google.maps.places.Autocomplete(input);

autoCompletePlaces.addListener('place_changed', function() {          
   var place = autoCompletePlaces.getPlace();          
}

你不能将
cityname
放入
?你能澄清你想要什么吗?我想在我的输入标签中获取城市名称值,而城市名称在其他控制器中,我如何获取它?你不能将
cityname
放入
?你能澄清你想要什么吗?我想在我的输入标签和c中获取城市名称值ityname在其他控制器中,我如何获取它?@Arnold可以自由提问。如果你觉得我的回答对你有帮助,那么你可以将我的回答标记为一个答案,以简化将来对其他人的搜索。请阅读此@Arnold可以自由提问。如果你觉得我的回答对你有帮助,那么你可以将我的回答标记为answ呃,为了简化将来对其他人的搜索。请阅读这个