gpt4 book ai didi

knockout.js - 在 Knockout 中设置 TabIndex

转载 作者:行者123 更新时间:2023-12-04 03:11:02 24 4
gpt4 key购买 nike

我需要使用 knockout 将 tabindex 设置为动态生成的控件。我在 UI 级别对属性进行数据绑定(bind),但它似乎不起作用。以下是数据绑定(bind)的 HTML 代码:

  <tbody data-bind="foreach: Week1">
<tr class="formFields" style="vertical-align: top;">
<td class="formFields" width="8%" data-bind="text: Day">
</td>
<td class="formFields" width="5%" align="center">
<select class="combobox" data-bind="value:Required, attr:{tabindex: 42 + Date + $index()}" >
<option value="E">Eligible</option>
<option value="O">On</option>
<option value="F">Off</option>
</select>
</td>
<td class="formFields" width="10%" align="center" >
<input class="txtbox" type="text" placeholder="S:" data-bind="value:SetupTime, attr: { tabindex: 43 + Date + $index() }/>
<input class="txtbox" type="text" placeholder="R:" data-bind="value:CloseTime, attr: { tabindex: 44 + Date + $index() }" />
</td>
<td class="formFields" width="10%" align="center">
<input class="txtbox" type="text" placeholder="Min:" data-bind="value:MinHrsPerDay, attr: { title: tabindex: 45 + Date + $index() }"/>
<input class="txtbox" type="text" placeholder="Max:" data-bind="value:MaxHrsPerDay, attr: { title: tabindex: 46 + Date + $index() }"/>
</td>
<td class="formFields" width="6%" align="center">
<input class="txtbox" align="middle" type="text" data-bind="value:MinWorkShift, attr: { tabindex: 47 + Date + $index() }"/>
</td>
</tr>
</tbody>

这里的 Date 是我的 View 模型的一个属性,它将天数表示为 0-6。由于可以有多行,我使用 $index() 来计算每行中控件的选项卡索引。

但这是我在运行时看到的:

<input type="text" data-bind="value:SetupTime, attr: {  tabindex: 43 + Date + $index() }" placeholder="S:"  class="txtbox" tabindex="43function d(){if(0&lt;arguments.length){if(!d.equalityComparer||!d.equalityComparer(c,arguments[0]))d.H(),c=arguments[0],d.G();return this}b.r.Wa(d);return c}2">

有人可以帮我改正吗?

提前致谢

最佳答案

因为你的 Date 属性是一个 ko.observable 所以你需要通过调用它作为函数来获取它的值,所以用 Date().

因此您需要将绑定(bind)更改为:

data-bind="value:SetupTime, attr: {  tabindex: 43 + Date() + $index() }" 

如果你在像 43 + Date() + $index() 这样的表达式中使用你的可观察对象,你只需要用 Date() 调用它(注意() 也在 $index 之后。)

如果你直接绑定(bind)到一个可观察对象,那么你不需要 data-bind="value:Required" 中的 (),因为在这种情况下KO 会自动为您“解包”该值。

关于knockout.js - 在 Knockout 中设置 TabIndex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16456317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com