asp.net repeater在javascript中使用模板

asp.net repeater在javascript中使用模板,javascript,asp.net,templates,repeater,Javascript,Asp.net,Templates,Repeater,我正在使用中继器更改ASP.Net列表页以进行在线编辑。我试图做的是为控件内的编辑创建模板(以便我可以使用数据绑定下拉列表),然后向该行添加一个JavaScript单击事件,该事件将用模板的副本替换该行,并填充原始绑定行中的字段 这把小提琴显示了我所追求的: 显然,我可以用纯JavaScript编写代码,但我认为使用该模板将为我提供绑定,并使这里的其他开发人员更容易进行更新 干杯, 阿西斯莫 来自JSFiddle的代码 这个 字段1 字段2 字段3 值1 价值2 价值3 变成 字段1 字段2

我正在使用中继器更改ASP.Net列表页以进行在线编辑。我试图做的是为控件内的编辑创建模板(以便我可以使用数据绑定下拉列表),然后向该行添加一个JavaScript单击事件,该事件将用模板的副本替换该行,并填充原始绑定行中的字段

这把小提琴显示了我所追求的:

显然,我可以用纯JavaScript编写代码,但我认为使用该模板将为我提供绑定,并使这里的其他开发人员更容易进行更新

干杯, 阿西斯莫

来自JSFiddle的代码

这个

字段1 字段2 字段3 值1 价值2 价值3
变成
字段1 字段2 字段3 价值3 价值4 价值5

你并不真的需要一个模板。您只需隐藏每个单元格中的表单字段,然后单击“隐藏文本”并显示表单字段

与您正在寻找的内容相关和/或重复

编辑#1:另一种方法是将所有表单字段的“模板”封装在脚本标记中:

<tr>
    <td>Field 1</td>
    <td>Field 2</td>
    <td>
        Field 3
        <script type="text/html">
            <td>
                <input value="Value 1">
            </td>
            <td>
                <input value="Value 2">
            </td>
            <td>
                <select>
                    <option>value 3</option>
                    <option>value 4</option>
                    <option>value 5</option>
                </select>
            </td>
        </script>
    </td>
</tr>

是的,我考虑过把输入隐藏起来。不幸的是,我们不想使用分页,而且可能有很多字段。我真的不希望代码/dom比需要的大。我们也被困在网络表单中,因此任何剃须刀技巧都是无法触及的;o(谢谢Greg,我想我会像你建议的那样使用JsRender模板引擎。如果可以的话,可能是JsViews)。
<tr>
    <td>Field 1</td>
    <td>Field 2</td>
    <td>
        Field 3
        <script type="text/html">
            <td>
                <input value="Value 1">
            </td>
            <td>
                <input value="Value 2">
            </td>
            <td>
                <select>
                    <option>value 3</option>
                    <option>value 4</option>
                    <option>value 5</option>
                </select>
            </td>
        </script>
    </td>
</tr>
<tr data-values='{ "foo": "bar", ... }'>
    <td>Field 1</td>
    ...