事にこだわっています。MVCと同じオブジェクトが@ Html.Partial()に渡されます...?
@foreach (BLL.Report.ReportSection section in @Model) {
@Html.Partial("~/Views/Report/_ReportSection", section)
}
@Model
は、DBからデータを取得するために、AJAX呼び出しを呼び出している
["~/Views/Report/_ReportSection" ]
部分図の負荷にIDS 1,2-
2つのオブジェクトを含むされます。
このセクションオブジェクトをデバッグしました。これらは、細かく別々のオブジェクトです。 しかし、それは両方の時間の2番目のオブジェクトを取得しています。
コントローラにajaxを呼び出すと、常に2番目のオブジェクト(id = 2)のデータが渡されます。
と同じ結果が表示されます。
私には何が欠けているかお伝えください。
UPDATE 遅くて申し訳ありません..
これは_ReportSection部分図で完全なコードです。レディ機能のAJAX呼び出しの が行われ、戻りデータとそれが
<div id="[email protected]@Model.SectionId">
</div>
<script type="text/javascript">
$(document).ready(function() {// alert("text-"[email protected]);
getSectionData();
});
function getSectionData(){
alert(@Model.ReportId+" -- "[email protected]);
CallAjax("GET",
"json",
"/ReportTemplate/GetSectionData",
{ ReportId: @Model.ReportId, SectionId: @Model.SectionId },
getSectionDataSuccess,
getSectionDataFail)
}
function getSectionDataSuccess(data)
{
var table = $('<table></table>');
var rowHeader = $('<th></th>');
$.each(data, function(index,column) {
var cell = $('<td></td>').text(column.ColHeader);
rowHeader.append(cell);
});
table.append(rowHeader);
$.each(data[0].columnDataList, function(index,colObj)
{
var row = $('<tr id="@Model.SectionId-'+colObj.RowId+'"></tr>');
table.append(row);
});
$.each(data, function(index,colObj)
{
$.each(colObj.columnDataList, function(index,colData)
{
var td = $('<td id="@Model.SectionId-'+colData.RowId+'-'+colData.ColName.trim()+'">'+colData.Data.trim()+'</td>');
var row = $(table).find('#@Model.SectionId-'+colData.RowId);
$(table).find('#@Model.SectionId-'+colData.RowId).append(td);
});
});
$('#[email protected]@Model.SectionId').append(table);
}
function getSectionDataFail(xhr, ajaxOptions, thrownError)
{
//alert("Ajax Failed!!!");
}
</script>
あなたの '_ReportSection'部分図とこのAJAX呼び出しを実行するjsを表示してください –
部分的なビューとアクションのコードも表示してください。 –
このコンテキストで 'モデル'のタイプは何ですか? – rmorrin