ajaxモーダルポップアップエクステンダーがあることは知っていますが、それは私が探しているものではありません。信じられないほどの DataTables プラグインをグリッド モードで ASP.Net ListView セットアップに接続し、スタイルを設定しましたが、率直に言って、これは悪いことです。
編集と削除用に 2 つの列を追加しました。編集ボタンは編集テンプレートでうまく機能しますが、Twitter ブートストラップ ポップアップ モーダルを起動して、ユーザーにそこで項目を編集してもらいたいと考えています。
モーダルをポップアップするために各行にアイコンを配置しても問題はありませんが、リストビューの行から値を取得する方法について混乱しています。
編集テンプレート全体をモーダル ダイアログとして起動することはできますか?
ASP.NET Listview と Fancybox を使用してこれを実現しましたが、編集中のアイテムの ID のクエリ文字列を取得するモーダルで新しいページを起動し、すべてにデータベース呼び出しを設定しました。それは非常にやり過ぎだったので、それに頼る必要はありません。
私が必要としているのは、編集テンプレートが行う情報を取得するためのヘルプです。item_command イベントを出発点として使用できると思います。
助けてください。これが私の簡単なデモリストビューのスニペットです。
<asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<tr>
<td>
<asp:Label ID="NameLabel" runat="server"
Text='<%# Eval("Name") %>' />
</td>
<td>
<asp:Label ID="ItemTypeLabel" runat="server"
Text='<%# Eval("ItemType") %>' />
</td>
<td>
<asp:Label ID="DescriptionLabel" runat="server"
Text='<%# Eval("Description") %>' />
</td>
<td>
<asp:Label ID="PriceLabel" runat="server"
Text='<%# Eval("Price","{0:C}") %>' />
</td>
<td>
<asp:LinkButton ID="EditButton" CommandName="Edit"
runat="server">Edit</asp:LinkButton>
</td>
<td>
<asp:LinkButton ID="DeleteButton" CommandName="Delete"
runat="server">Delete</asp:LinkButton>
</td>
</tr>
</ItemTemplate>
<EditItemTemplate>
<tr>
<td>
<asp:TextBox ID="NameTextBox" runat="server" Text='<%# Bind("Name") %>' />
</td>
<td>
<asp:TextBox ID="ItemTypeTextBox" runat="server"
Text='<%# Bind("ItemType") %>' />
</td>
<td>
<asp:TextBox ID="DescriptionTextBox" runat="server"
Text='<%# Bind("Description") %>' />
</td>
<td>
<asp:TextBox ID="PriceTextBox" runat="server" Text='<%# Bind("Price") %>' />
</td>
<td>
<asp:LinkButton ID="UpdateButton" CommandName="Update"
runat="server">Update</asp:LinkButton>
</td>
<td>
<asp:LinkButton ID="CancelButton" CommandName="Cancel"
runat="server">Cancel</asp:LinkButton>
</td>
</tr>
</EditItemTemplate>
<LayoutTemplate>
<table id="myTable" border="0">
<thead>
<tr>
<th>Name</th>
<th>ItemType</th>
<th>Description</th>
<th>Price</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr id="itemPlaceholder" runat="server">
</tr>
</tbody>
</table>
</LayoutTemplate>
</asp:ListView>
<asp:Content ContentPlaceHolderID="CPscript" Runat="Server">
<script type="text/javascript">
$(document).ready(function () {
// for datatables
$('#myTable').dataTable({
"aaSorting": []
});
// for watermark (targets all textboxes inside datatable div)
$("#DataTable :input:text").watermark("Search for Data").addClass("watermark");
});
</script>
</asp:Content>