Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度2单击动态生成的图元_Javascript_Angular - Fatal编程技术网

Javascript 角度2单击动态生成的图元

Javascript 角度2单击动态生成的图元,javascript,angular,Javascript,Angular,我正在使用一个第三方模块(datepicker),它在DOM中解析为如下所示(我编写的html只有datepicker元素) 上面输入的输出是一个合法的输入元素 <input _ngcontent-c2="" class="datepicker__input ng-untouched ng-pristine ng-valid" readonly="true" ng-reflect-ng-style="[object Object]" ng-reflect-model="2017/06/11

我正在使用一个第三方模块(datepicker),它在DOM中解析为如下所示(我编写的html只有datepicker元素)

上面输入的输出是一个合法的输入元素

<input _ngcontent-c2="" class="datepicker__input ng-untouched ng-pristine ng-valid" readonly="true" ng-reflect-ng-style="[object Object]" ng-reflect-model="2017/06/11" placeholder="Select a date" style="color: rgb(51, 51, 51); background-color: rgb(255, 255, 255); border: 1px solid rgb(218, 218, 218);">

但是,单击没有任何作用。我查看了模块本身,它在点击事件上没有做任何花哨的事情,所以它应该可以工作


我无法提供JSFIDLE或任何东西,因为它依赖于此第三方模块,

我将使用
选择器。onInputClick()
方法:

template.html

<material-datepicker #picker [(date)]="yourModelDate"></material-datepicker>
<button (click)="picker.onInputClick(); $event.stopPropagation()">Open manually</button>

手动打开
注意:此处需要
$event.stopPropagation()
,因为日期选择器处理文档单击


我会使用
选择器。onInputClick()
方法:

template.html

<material-datepicker #picker [(date)]="yourModelDate"></material-datepicker>
<button (click)="picker.onInputClick(); $event.stopPropagation()">Open manually</button>

手动打开
注意:此处需要
$event.stopPropagation()
,因为日期选择器处理文档单击


您希望发生什么?如果将单击事件绑定到输入,我们可以看到那段代码吗?或者您只是想把注意力集中在输入上?当执行
input.click()
时,您希望发生什么?是否连接了侦听单击事件的处理程序?为什么不连接是的,我正在使用的模块(Angular-2-Datepicker)在该输入上有一个单击事件。从它们的组件上看,它看起来像
,该函数处理opening@developer033是的,很好的电话我想会解决的谢谢。。。然而;出于好奇,我仍然想知道如何访问问题中提到的动态生成的输入。您希望发生什么?如果将单击事件绑定到输入,我们可以看到那段代码吗?或者您只是想把注意力集中在输入上?当执行
input.click()
时,您希望发生什么?是否连接了侦听单击事件的处理程序?为什么不连接是的,我正在使用的模块(Angular-2-Datepicker)在该输入上有一个单击事件。从它们的组件上看,它看起来像
,该函数处理opening@developer033是的,很好的电话我想会解决的谢谢。。。然而;出于好奇,我仍然想知道如何访问问题中提到的动态生成的输入。非常感谢yurzui,这是我错过的topPropagation!太棒了,谢谢yurzui,这是我错过的最精彩的节目!
<material-datepicker #picker [(date)]="yourModelDate"></material-datepicker>
<button (click)="picker.onInputClick(); $event.stopPropagation()">Open manually</button>