1

我需要加载一个带有动态选项卡的表单,该表单读取一个确定选项卡数量的 XML。我有一个“标签模板”,每个标签都是用这段代码编写的。第一个问题是字段的 id。如果我有 2 个(或更多)选项卡,则每个选项卡字段都有相同的 id,我无法获取/设置它们。

对于创建选项卡,我使用这样的 html 函数:

var divtab1 = $("#tab1").html();
var tabCode = "<div id='tab"+ i +"' class='tab_content'> "+ divtab1 +"</div>";
finalhtml = finalhml + tabCode;

其中#tab1 是“选项卡模板”,我为每个选项卡执行此操作。最后我把finalhtml放在一个div中。

$("#bodyTabs").html(finalhtml);

选项卡构建良好,但某些功能(如 datepickers 和 ckeditors(文本编辑器))不起作用。

我不知道如何动态更改字段 ID,也不知道这种方式是否最适合。

有什么建议吗?

非常感谢!

4

3 回答 3

1

尝试

$('#ID').attr('id', 'ID2');

改变身份证

于 2013-02-21T13:02:11.967 回答
0

每当我们使用日期选择器或任何编辑器时,我们都必须在文档就绪事件中初始化它们。因此,我建议每当您更改选项卡内容时,只需调用受尊敬的控制器的 Init 方法,事情就会按预期工作。

干杯

于 2013-02-21T12:30:00.683 回答
0

最后我找到了一个很好的解决方案。使用 c# 我构建了一个 for 并且每次迭代我都做:

<%     List<String> Idiomas = loadIdiomas();
       foreach (String idioma in Idiomas)
       { %>
       <div id="tab_<%=idioma%>" class="tab_content">
            <input type="text" name="<%=idioma%>_title" id="<%=idioma%>_title"  />
             ...

通过这种方式,每个选项卡都有不同的 id 字段,避免使用 javascript。它更优雅,解决了日期选择器和文本编辑器的问题。

谢谢大家的回答:)

于 2013-02-26T10:12:05.727 回答