Angularjs 在一个页面上有两个ui引导的日期选择器,每个页面只弹出一次

Angularjs 在一个页面上有两个ui引导的日期选择器,每个页面只弹出一次,angularjs,twitter-bootstrap,datepicker,Angularjs,Twitter Bootstrap,Datepicker,我相信我已经听从了其他人的建议,比如“如何在一个页面上至少有两个ui引导日期选择器?”的好答案,并成功地将其中两个合并到我的页面上。虽然我可以无休止地编辑每个日期的文本版本,但我只能让每个日期的弹出日历只出现一次。对日历图标的额外点击似乎没有任何作用 我做错了什么?我看不出这是预期的行为,也看不出我遗漏了什么或意外地包含了什么选项 相关html为: <div> <input type="text" datepicker-popup="{{format}}" ng-model

我相信我已经听从了其他人的建议,比如“如何在一个页面上至少有两个ui引导日期选择器?”的好答案,并成功地将其中两个合并到我的页面上。虽然我可以无休止地编辑每个日期的文本版本,但我只能让每个日期的弹出日历只出现一次。对日历图标的额外点击似乎没有任何作用

我做错了什么?我看不出这是预期的行为,也看不出我遗漏了什么或意外地包含了什么选项

相关html为:

<div>
  <input type="text" datepicker-popup="{{format}}" ng-model="startDate" is-open="openedStart" datepicker-options="dateOptions" close-text="Close" />
  <button type="button" ng-click="open($event,'openedStart')"></button>
  <input type="text" datepicker-popup="{{format}}" ng-model="endDate" is-open="openedEnd" datepicker-options="dateOptions" close-text="Close" />
  <button type="button" ng-click="open($event,'openedEnd')"></button>

尝试创建一个对象。大概是这样的:

html:


尝试创建一个对象。大概是这样的:

html:


尝试创建一个对象。大概是这样的:

html:


尝试创建一个对象。大概是这样的:

html:


您是否尝试过$parent.openedStart而不仅仅是openedStart?@Scott您建议在输入标记中的哪个位置尝试。您拥有的是open=“openedStart”。查看是否打开=“$parent.openedStart”帮助。请参见下面的答案。我想知道你到底想用$scope[opened]=true做什么,因为我不确定这是否有意义。你试过$parent.openedStart而不是只试过openedStart吗?@Scott你建议在输入标记中试一下,确切地说是在哪里。您拥有的是open=“openedStart”。查看是否打开=“$parent.openedStart”帮助。请参见下面的答案。我想知道你到底想用$scope[opened]=true做什么,因为我不确定这是否有意义。你试过$parent.openedStart而不是只试过openedStart吗?@Scott你建议在输入标记中试一下,确切地说是在哪里。您拥有的是open=“openedStart”。查看是否打开=“$parent.openedStart”帮助。请参见下面的答案。我想知道你到底想用$scope[opened]=true做什么,因为我不确定这是否有意义。你试过$parent.openedStart而不是只试过openedStart吗?@Scott你建议在输入标记中试一下,确切地说是在哪里。您拥有的是open=“openedStart”。查看是否打开=“$parent.openedStart”帮助。请参见下面的答案。我想知道你到底想用$scope[opened]=true做什么,因为我不确定这是否有意义。谢谢@clagos。我第一次在翻译中丢失了一些东西,从单一使用datepicker到多次使用datepicker。你的回答对我很有用。谢谢你@clagos。我第一次在翻译中丢失了一些东西,从单一使用datepicker到多次使用datepicker。你的回答对我很有用。谢谢你@clagos。我第一次在翻译中丢失了一些东西,从单一使用datepicker到多次使用datepicker。你的回答对我很有用。谢谢你@clagos。我第一次在翻译中丢失了一些东西,从单一使用datepicker到多次使用datepicker。你的回答对我很有用。
$scope.openedStart = false;

$scope.openedEnd = false;

$scope.format = "dd.MM.yyyy";

$scope.open = function($event,opened) {
  $event.preventDefault();
  $event.stopPropagation();

  $scope[opened] = true;
};
<input type="text" datepicker-popup="{{format}}" ng-model="startDate" is-open="opened.openedStart" datepicker-options="dateOptions" close-text="Close" />
<button type="button" ng-click="open($event,'openedStart')"></button>
<input type="text" datepicker-popup="{{format}}" ng-model="endDate" is-open="opened.openedEnd" datepicker-options="dateOptions" close-text="Close" />
<button type="button" ng-click="open($event,'openedEnd')"></button>
$scope.opened = {};
$scope.opened.openedStart = false;
$scope.opened.openedEnd = false;

$scope.open = function($event,datepicker) {
  $event.preventDefault();
  $event.stopPropagation();
  $scope.opened[datepicker] = true;
};