2

我有一个奇怪的情况(我们不是吗?)日期选择器,想得到一些建议。

我有一个包含位置列表的屏幕,对于每个位置,他们可以单击编辑并编辑该位置。编辑显示在编辑链接下方,他们可以一次编辑多个位置。这意味着在屏幕上多次呈现同一个视图,因此将存在多个具有相同 id 的字段(编辑 4 个位置将导致 4 个“DateOpened”字段)。

因此,当我加载视图时,javascript 会将日期选择器添加到任何需要它的字段,如下所示:

$(document).ready(function () {
    var elements = $(".NeedsDatePicker > td > input");
    $(".NeedsDatePicker > td > input").datepicker();
    $(".NeedsDatePicker").removeClass("NeedsDatePicker");
});

工作正常,但是,正如您可能已经知道的那样,当我单击日历上的日期时,当多个编辑窗口打开时,它会填充第一个“DateOpened”字段。

有没有办法告诉日期选择器在某个父级中使用该字段,就像一般 jQuery 选择一样?

$("#DateOpened", "Location-134").doWhatever...

...或者有没有办法在不破坏 MVC 的 UpdateModel() 函数的情况下为字段提供不同的 id?或者有什么其他建议?

4

1 回答 1

1

您绝对应该在 HTML DOM 中保持 ID 的唯一性。大多数(如果不是全部)DOM 操作库/框架,包括 jQuery,都内置了这个假设。

关于 SO WRT 有几个问题可以避免表单中出现相同的 ID:

于 2011-11-07T23:17:25.680 回答