0

我正在通过 ajax 调用添加到元素列表中。ajax 调用将信息发送到控制器,控制器将所有内容添加到数据库,然后从数据库中获取列表的所有项目,将项目添加到视图模型,然后返回带有模型的部分视图。我清除列表的 div 容器,然后添加返回的 HTML。

$('#container').empty().html(result);

我的问题是,在 HTML 中,我有 Kendo Datepickers。页面加载正常,如果我刷新一切都很好。但是在 Ajax 调用之后,Kendo Datepickers 不在那里。我调试并从 ajax 调用中获得了结果 HTML,以下是 datepickers 显示的内容:

jQuery(function(){jQuery("#dueDate0").kendoDatePicker({"format":"M/d/yyyy","min":new Date(1900,0,1,0,0,0,0),"max":new Date(2099,11,31,0,0,0,0)});});

'dueDate0' 显然是元素的 ID,但它不应该是零,它应该是一个实际的 ID 号(例如 12 )。当我在 AJAX 调用之后查看 HTML 时,日期选择器只是具有日期类型的输入元素。

关于做什么的任何建议?

谢谢

编辑:这是在 AJAX 调用中返回的 HTML。

<div id="accordion">
    <div class="ItemList">
        <table class="tblPriorityElement">
            <tr>
                <td class="tdPrioritySelect">
                    <div class='handle'><span class='ui-icon ui-icon-carat-2-n-s'></span></div>
                </td>
                <td class="tdPriorityName">fasdfasr4</td>
                <td class="tblType" tabindex="0">
                    <span class="txtType">Project</span>
                </td>
                <td class="tdPriorityDate" tabindex="0">
                    <time>10/8/2013</time>
                </td>
                <td class="tdAllocation" tabindex="0">
                    <span class="txtAllocation">0 hrs</span>
                </td>
                <td class="tdDeletePriority">;
                    <a href="#"><img src="../../Images/redx.png"/></a>
                </td>
            </tr>
        </table>
        <div class="content">
            <form class="editItem">
                <input id="ItemID" name="ItemID" type="hidden" value="0" />
                <label>Name:</label>
                <input class="text-box single-line" id="Item_Name" name="Item.Name" type="text" value="fasdfasr4" />
                <label>Type:</label>
                <input class="text-box single-line" id="Item_Type" name="Item.Type" type="text" value="Project" />
                <label>Due date:</label>
                <input class="k-input" id="dueDate0" name="dueDate0" type="date" value="10/8/2013" />
jQuery(function(){jQuery("#dueDate0").kendoDatePicker({"format":"M/d/yyyy","min":new Date(1900,0,1,0,0,0,0),"max":new Date(2099,11,31,0,0,0,0)});});

                <br/>
                <label>End Date:</label>
                <input class="k-input" id="endDate0" name="endDate0" type="date" />
jQuery(function(){jQuery("#endDate0").kendoDatePicker({"format":"M/d/yyyy","min":new Date(1900,0,1,0,0,0,0),"max":new Date(2099,11,31,0,0,0,0)});});

                    <label>Start Date:</label>
                    <input class="k-input" id="startDate0" name="startDate0" type="date" value="10/8/2013" />
jQuery(function(){jQuery("#startDate0").kendoDatePicker({"format":"M/d/yyyy","min":new Date(1900,0,1,0,0,0,0),"max":new Date(2099,11,31,0,0,0,0)});});

                <br/>
                <input type="submit" value="save"/>
            </form>

        </div>
    </div>
</div>
4

1 回答 1

1

生成部分视图时,只需为日期选择器定义某种随机 id - 例如 Guid.NewGuid() 或其他东西。您是否使用 MVC 助手来定义日期选择器?

于 2013-10-10T12:36:12.893 回答