角加入多个字段一个字段 [英] Angular join multiple fields to one field

查看:156
本文介绍了角加入多个字段一个字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图找到文章采用了棱角分明的每个字段复制值到另一个领域。

我想通过加入天,月,年字段,以便它会显示让起始日期值 2016年1月2日

在这里输入的形象描述

HTML

 < D​​IV NG重复=设备专业在jobseeker.professionals>
  < D​​IV CLASS =infoDateBox>
    <输入类型=文本占位符=DDNG-模式=profesional.start_dd>
    <输入类型=文本占位符=MMNG-模式=profesional.start_mm>
    <输入类型=文本占位符=YYYYNG-模式=profesional.start_yyyy>
  < / DIV>
  <跨度类=分隔符> - < / SPAN>
  &所述; TR>
    < TD>开始日期和LT; / TD>
    &所述; TD>:其中; / TD>
    &所述; TD>&下;输入类型=文本纳克模型=professional.start_date纳克值=professional.start_yyyy +'/'+ professional.start_mm +'/'+ professional.start_dd>&下; / TD>
  < / TR>
< / DIV>

控制器

  angular.module('hiredtoday')
  .controller('SmartPofileUpdateCtrl',函数($范围,$日志$状态,$ stateParams,SmartProfile){
    $ scope.jobseeker = SmartProfile.get({ID:$ stateParams.id});
  })

我用 NG-值从花药现场得到的数据,但它不更新 NG-模型
 的 professional.start_date

如果您有其他的选择,我需要你的帮助。谢谢你。


解决方案

您尝试实现这一的jsfiddle

\r
\r

VAR对myApp = angular.module(对myApp,[]);\r
\r
\r
myApp.controller(myCtrl功能($范围){\r
  $ scope.profesional = {};\r
  $ scope.setStartDate =功能(){\r
  $ scope.professional.start_date = $ scope.professional.start_yyyy +'/'+ $ scope.professional.start_mm +'/'+ $ scope.professional.start_dd;\r
  }\r
});

\r

&LT;脚本SRC =htt​​ps://ajax.googleapis.com/ajax /libs/angularjs/1.2.23/angular.min.js\"></script>\r
&LT;机身NG-应用=对myAppNG控制器=myCtrl&GT;\r
  &LT; D​​IV CLASS =infoDateBox&GT;\r
    &LT;输入类型=文本占位符=DDNG-变化=setStartDate()NG模型=professional.start_dd&GT;\r
    &LT;输入类型=文本占位符=MMNG-变化=setStartDate()NG模型=professional.start_mm&GT;\r
    &LT;输入类型=文本占位符=YYYYNG-变化=setStartDate()NG模型=professional.start_yyyy&GT;\r
  &LT; / DIV&GT;\r
  &LT;跨度类=分隔符&GT; - &LT; / SPAN&GT;\r
  &LT;表&gt;\r
    &所述; TR&GT;\r
      &LT; TD&GT;开始日期和LT; / TD&GT;\r
      &所述; TD&GT;:其中; / TD&GT;\r
      &所述; TD&GT;\r
        &LT;输入类型=文本NG模型=professional.start_date&GT;\r
      &LT; / TD&GT;\r
    &LT; / TR&GT;\r
  &LT; /表&gt;\r
&LT; /身体GT;

\r

\r
\r

I have tried to find article to copy value in each of fields to another field using angular.

I want to get start_date value by joining day, month, and year fields so it will show 2016/1/2.

HTML

<div ng-repeat="profesional in jobseeker.professionals">
  <div class="infoDateBox">
    <input type="text" placeholder="DD" ng-model="profesional.start_dd">
    <input type="text" placeholder="MM" ng-model="profesional.start_mm">
    <input type="text" placeholder="YYYY" ng-model="profesional.start_yyyy">
  </div>
  <span class="seperator">-</span>
  <tr>
    <td>Start date</td>
    <td>:</td>
    <td><input type="text" ng-model="professional.start_date" ng-value="professional.start_yyyy + '/' + professional.start_mm + '/' + professional.start_dd"></td>
  </tr>
</div>

Controller

angular.module('hiredtoday')
  .controller('SmartPofileUpdateCtrl', function ($scope, $log, $state, $stateParams, SmartProfile) {
    $scope.jobseeker = SmartProfile.get({id: $stateParams.id});
  })

I use ng-value to get data from anther field but it does not update the ng-model of professional.start_date

If you have another options, I need your help. Thank you.

解决方案

You try achieve this jsfiddle.

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


myApp.controller("myCtrl", function($scope) {
  $scope.profesional ={};
  $scope.setStartDate = function(){
  $scope.professional.start_date = $scope.professional.start_yyyy + '/' + $scope.professional.start_mm + '/' + $scope.professional.start_dd;
  }
});

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="myApp" ng-controller="myCtrl">
  <div class="infoDateBox">
    <input type="text" placeholder="DD" ng-change="setStartDate()" ng-model="professional.start_dd">
    <input type="text" placeholder="MM" ng-change="setStartDate()" ng-model="professional.start_mm">
    <input type="text" placeholder="YYYY" ng-change="setStartDate()" ng-model="professional.start_yyyy">
  </div>
  <span class="seperator">-</span>
  <table>
    <tr>
      <td>Start date</td>
      <td>:</td>
      <td>
        <input type="text" ng-model="professional.start_date">
      </td>
    </tr>
  </table>
</body>

这篇关于角加入多个字段一个字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆