私は razor テンプレートを使用しているので、コードで作業するときに mvc ビューの混乱を減らすことができます。次のように、モバイルページに必要な別のページとしてレンダリングされる「セクション」を作成しました。
<div data-role="page" id="page2">
<div data-role="header">
@if (IsSectionDefined("Header2"))
{
@RenderSection("Header2")
}
else
{
}
</div>
<div data-role="content">
@if (IsSectionDefined("Content2"))
{
@RenderSection("Content2")
}
else
{
}
</div>
<div data-role="footer">
@if (IsSectionDefined("Footer2"))
{
@RenderSection("Footer2")
}
else
{
}
</div>
上記と同じテンプレートを 3 ページまで使用します。
現時点での問題は、次を使用してページ2にコードを割り当てたことです。
@section Content2{
<div id="machinesearch" class="ui-content">
<ul id="machinelist" data-autodividers="true" data-theme="d" data-divider-theme="a"
data-filter="true" data-role="listview">
@foreach (var item in Model.Plants)
{
<li><a href="#page1" onclick="javscript:MachineSet($(this).find('input').val(),$(this).text());">@item.Asset_Descriptor<input id="Sap_ID" type="hidden" value="@item.Asset_SAP_ID"/></a></li>
}
</ul>
</div>
}
そして、このページを表示するための私のリンクは次のとおりです。
$("#testbutton").click(function(){
$('#page2').trigger('pagecreate');
$("#machinelist").listview('refresh');
alert("test");
});
しかし、これは何の違いもないようです。
何か案は?
最初のページの html ソースを表示すると、データがすべて正しく読み込まれていることがわかります。このソースには、2 番目のページの html も含まれています。ページ1がロードされた後、カミソリがページ2にデータを挿入しているためと思われます。