在一个表单中,我有一个带有多个选项的选择框,每个选项代表一个包含影响表单其余部分的各种变量的报告。有些报告需要开始日期,有些需要结束日期,有些则需要两者。我已将每个报告的要求绑定到选项元素,如下所示:
<select data-bind="value: ReportId">
<option value="ID" data-hasStartDate="BOOL" data-hasEndDate="BOOL">Report name</option>
</select>
<input data-bind="visible: hasStartDate" />
<input data-bind="visible: hasEndDate" />
ID 是报告的 ID,BOOL 为真或假。我使用敲除将选择框的值数据绑定到reportId。但是我不知道如何将 hasStartDate 和 hasEndDate-values 绑定到 Knockout observable 以显示适当的表单元素。
即使使用自定义绑定,我也需要一个普通的 jQuery onChange-event 来将值应用于 Knockout-values hasStartDate 和 hasEndDate。是否有可能完全用 Knockout 本身来完成?