【发布时间】:2015-05-22 11:46:12
【问题描述】:
我目前正在开发一个 AngularJS 应用程序。
我想要达到的目标:
我希望用户能够从选择下拉列表中选择一个地址,并将此数据传递到下一阶段。
当前问题:
我需要限制每个地址选项显示的数据量 - House Number、Street Name 和 Post Code。
我需要能够允许用户选择一个地址并将数据(更改时)传递到下一部分,显示结果和来自所选地址的附加隐藏信息 - 区域, 地点等
下面是我的代码,Vineet 建议我这样做。
任何帮助/建议都会有所帮助!
HTML - 第一部分(选择地址)
<form class="introForm" id="introForm" name="introForm">
<label class="item noborder"><select>
<option data-addressone="{{address['Address 1']}}" data-addresstwo=
"{{address['Address 2']}}" data-area="{{address.Area}}" data-day=
"{{address.Day}}" data-locality="{{address.Locality}}" data-number=
"{{address.Number}}" data-postcode="{{address.Postcode}}"
data-streetname="{{address.Streetname}}" data-week=
"{{address.Week}}">
{{address.Number}} {{address['Address 1']}} {{address['Address
2']}} {{address.Postcode}}
</option>
</select></label> <button class="button submit">Next</button>
</form>
控制器
$scope.addressSelect = function() {
var angElement = angular.element(document.querySelector('select option'));
$scope.introData.confirmAddress.number = angElement.attr('data-number');
$scope.introData.confirmAddress.addressone = angElement.attr(
'data-addressone');
$scope.introData.confirmAddress.addresstwo = angElement.attr(
'data-addresstwo');
$scope.introData.confirmAddress.streetname = angElement.attr(
'data-streetname');
$scope.introData.confirmAddress.area = angElement.attr('data-area');
$scope.introData.confirmAddress.locality = angElement.attr(
'data-locality');
$scope.introData.confirmAddress.locality = angElement.attr(
'data-postcode');
$scope.introData.confirmAddress.day = angElement.attr('data-day');
$scope.introData.confirmAddress.week = angElement.attr('data-week');
}
HTML - 第二部分(显示选定的结果)
<div class="item noborder nopadding confirmAddress">
<p><span>{{introData.fullname}}</span>
<span class="email">{{introData.email}}</span>
<span>{{introData.confirmAddress.number}}</span>
<span>{{introData.confirmAddress.addressone}}</span>
<span>{{introData.confirmAddress.addresstwo}}</span>
<span>{{introData.confirmAddress.streetname}}</span>
<span>{{introData.confirmAddress.area}}</span>
<span>{{introData.confirmAddress.locality}}</span>
<span>{{introData.confirmAddress.postcode}}</span></p>
</div>
【问题讨论】:
-
我不知道你的问题是什么。你能解释一下你想要达到的目标吗?
-
如果您按照公认的答案进行操作,则几乎可以肯定您做错了。您不必进行 DOM 操作。数据在模型中。解释你想要做什么。
-
@JBNizet 我已经更新了我的问题!
标签: angularjs ionic-framework angularjs-ng-model