我需要获得动态下拉列表的值。我所有的其他领域都使用.value和所有工作。当我尝试获取下拉列表的值时,我在控制台日志中出现错误...'无法读取未定义'的属性'值'。
我的HTML看起来像这样......
div class="">
<paper-input id="pxName" label="Patient Name"></paper-input>
<paper-input id="pxAptTime" label="Appointment Time"></paper-input>
<paper-input id="pxLocation" label="Location"></paper-input>
<paper-dropdown-menu label="Doctors">
<paper-listbox slot="dropdown-content" class="dropdown-content">
<template is="dom-repeat" items="[[doctors]]" as="dr">
<paper-item id="pxProvider">[[dr.name]]</paper-item>
</template>
</paper-listbox>
</paper-dropdown-menu>
<div id="px-input">
<paper-button raised id="addPatient" on-tap="addPatient">Add Patient</paper-button>
</div>
</div>
我的发布功能看起来像这样......
addPatient: function () {
// console.log(this.$.pxProvider.value);
this.$.patients.ref.push({
name: this.$.pxName.value,
aptTime: this.$.pxAptTime.value,
location: this.$.pxLocation.value,
provider: this.$.pxProvider.value
})
非常感谢任何帮助。
答案 0 :(得分:0)
我相信你属于新的范围
这意味着你不能使用&#34;这个&#34;在你的推动中。
addPatient: function () {
var me = this;
this.$.patients.ref.push({
name: me.$.pxName.value,
aptTime: me.$.pxAptTime.value,
location: me.$.pxLocation.value,
provider: me.$.pxProvider.value
})
}
另一种解决方案,可能更清洁:
addPatient: function () {
this.$.patients.ref.push({
name: this.$.pxName.value,
aptTime: this.$.pxAptTime.value,
location: this.$.pxLocation.value,
provider: this.$.pxProvider.value
}.bind(this));
}