0

ajax 呼び出しを使用して要素のリストに追加しています。ajax呼び出しは情報をコントローラーに送信し、コントローラーはすべてをデータベースに追加し、データベースからリストのすべてのアイテムを取得し、アイテムをビューモデルに追加し、モデルを含む部分ビューを返します。リストの div コンテナーをクリアしてから、返された HTML を追加します。

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

私の問題は、HTML に Kendo Datepickers があることです。ページは正常に読み込まれ、更新するとすべて問題ありません。しかし、Ajax 呼び出しの直後、Kendo Datepickers はそこにいません。私はデバッグし、ajax 呼び出しから結果の HTML を取得しました。以下は、日付ピッカーに表示されているものです。

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 に答える