模态中的 DetailsView - 模态无法打开,与数据切换冲突
DetailsView in Modal - Modal won't open, conflict with data-toggle
我在页面上有一个 GridView 和 DetailsView - 都是数据绑定。
我想要 select 一个数据绑定行并打开其中填充了 DetailsView 的模式。
我的 select 按钮的 TemplateField 中有 LinkButtons,示例 bootstrap 模态数据切换和数据目标字段。
我的问题是在模态中显示 DetailsView - 单击 GridView 中的 SELECT 按钮 - 模态显示,但无论我 select 是哪一行,数据都保持不变.
详情查看代码
<asp:DetailsView ID="DetailsView1" runat="server" DataSourceID="DetailsViewComputer" Height="50px" Width="125px">
</asp:DetailsView>
<asp:SqlDataSource ID="DetailsViewComputer" runat="server" ConnectionString="<%$ ConnectionStrings:ITManagementConnectionString %>" ProviderName="<%$ ConnectionStrings:ITManagementConnectionString.ProviderName %>" SelectCommand="SELECT idComputers, idStatus, Hostname, idUser, AssetNumber, IPAddress, MACAddress, idoffice, idManufacturer, idModel, idProcessor, idRAM, idRAMType, idGraphicsCard, idHDD, SerialNumber, DateCreated, DateLastModified FROM computers WHERE (idComputers = @Param1)">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="Param1" PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource>
GridView 代码
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="idComputers" DataSourceID="GridViewComputer">
<Columns>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Select" data-toggle="modal" data-target="#myModal" Text="Select"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="idComputers" HeaderText="idComputers" InsertVisible="False" ReadOnly="True" SortExpression="idComputers" />
<asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />
<asp:BoundField DataField="Hostname" HeaderText="Hostname" SortExpression="Hostname" />
<asp:BoundField DataField="forename" HeaderText="forename" SortExpression="forename" />
<asp:BoundField DataField="surname" HeaderText="surname" SortExpression="surname" />
<asp:BoundField DataField="officename" HeaderText="officename" SortExpression="officename" />
<asp:BoundField DataField="IPAddress" HeaderText="IPAddress" SortExpression="IPAddress" />
<asp:BoundField DataField="ManufacturerName" HeaderText="ManufacturerName" SortExpression="ManufacturerName" />
<asp:BoundField DataField="Model" HeaderText="Model" SortExpression="Model" />
<asp:BoundField DataField="HDDSize" HeaderText="HDDSize" SortExpression="HDDSize" />
<asp:BoundField DataField="RAMSize" HeaderText="RAMSize" SortExpression="RAMSize" />
</Columns>
</asp:GridView>
通过排除过程,我认为问题与我的 LinkButton 有关 - 特别是与 data-toggle - 见下文:
LinkButton1
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Select" data-toggle="modal" data-target="#myModal" Text="Select"></asp:LinkButton>
每当我从 Modal 中删除数据切换元素和 DetailsView 代码时 - select 工作并且 DetailsView 显示数据。每当包含数据切换元素并且 DetailsView 代码在模态中时 - 模态显示没有但 DetailsView 数据不会改变。
我是不是漏掉了什么?
我已经搜索并尝试了以下页面中的解决方案,但要么我是个白痴,要么它不起作用(很可能是前者):
Open popup with linkbutton
如果有任何帮助,我将不胜感激!为此我挠头了一整天
提前致谢,
克里斯
我通过使用 JS 打开模式找到了解决问题的办法 - 见下文:
http://getbootstrap.com/javascript/#js-programmatic-api
我删除了
data-toggle="modal" data-target="#myModal"
来自 LinkButton,而是添加了 onClick="LinkButton1_Click" - 见下文:
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" OnClick="LinkButton1_Click" CommandName="Select" Text="Select"></asp:LinkButton>
然后我在后面的 VB.NET 代码中引用了它:
Protected Sub LinkButton1_Click(sender As Object, e As EventArgs)
ScriptManager.RegisterStartupScript(Me, Me.GetType(), "myModal", "$('#myModal').modal()", True)
End Sub
我在页面上有一个 GridView 和 DetailsView - 都是数据绑定。
我想要 select 一个数据绑定行并打开其中填充了 DetailsView 的模式。
我的 select 按钮的 TemplateField 中有 LinkButtons,示例 bootstrap 模态数据切换和数据目标字段。
我的问题是在模态中显示 DetailsView - 单击 GridView 中的 SELECT 按钮 - 模态显示,但无论我 select 是哪一行,数据都保持不变.
详情查看代码
<asp:DetailsView ID="DetailsView1" runat="server" DataSourceID="DetailsViewComputer" Height="50px" Width="125px">
</asp:DetailsView>
<asp:SqlDataSource ID="DetailsViewComputer" runat="server" ConnectionString="<%$ ConnectionStrings:ITManagementConnectionString %>" ProviderName="<%$ ConnectionStrings:ITManagementConnectionString.ProviderName %>" SelectCommand="SELECT idComputers, idStatus, Hostname, idUser, AssetNumber, IPAddress, MACAddress, idoffice, idManufacturer, idModel, idProcessor, idRAM, idRAMType, idGraphicsCard, idHDD, SerialNumber, DateCreated, DateLastModified FROM computers WHERE (idComputers = @Param1)">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="Param1" PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource>
GridView 代码
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="idComputers" DataSourceID="GridViewComputer">
<Columns>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Select" data-toggle="modal" data-target="#myModal" Text="Select"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="idComputers" HeaderText="idComputers" InsertVisible="False" ReadOnly="True" SortExpression="idComputers" />
<asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />
<asp:BoundField DataField="Hostname" HeaderText="Hostname" SortExpression="Hostname" />
<asp:BoundField DataField="forename" HeaderText="forename" SortExpression="forename" />
<asp:BoundField DataField="surname" HeaderText="surname" SortExpression="surname" />
<asp:BoundField DataField="officename" HeaderText="officename" SortExpression="officename" />
<asp:BoundField DataField="IPAddress" HeaderText="IPAddress" SortExpression="IPAddress" />
<asp:BoundField DataField="ManufacturerName" HeaderText="ManufacturerName" SortExpression="ManufacturerName" />
<asp:BoundField DataField="Model" HeaderText="Model" SortExpression="Model" />
<asp:BoundField DataField="HDDSize" HeaderText="HDDSize" SortExpression="HDDSize" />
<asp:BoundField DataField="RAMSize" HeaderText="RAMSize" SortExpression="RAMSize" />
</Columns>
</asp:GridView>
通过排除过程,我认为问题与我的 LinkButton 有关 - 特别是与 data-toggle - 见下文:
LinkButton1
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Select" data-toggle="modal" data-target="#myModal" Text="Select"></asp:LinkButton>
每当我从 Modal 中删除数据切换元素和 DetailsView 代码时 - select 工作并且 DetailsView 显示数据。每当包含数据切换元素并且 DetailsView 代码在模态中时 - 模态显示没有但 DetailsView 数据不会改变。
我是不是漏掉了什么?
我已经搜索并尝试了以下页面中的解决方案,但要么我是个白痴,要么它不起作用(很可能是前者):
Open popup with linkbutton
如果有任何帮助,我将不胜感激!为此我挠头了一整天
提前致谢,
克里斯
我通过使用 JS 打开模式找到了解决问题的办法 - 见下文:
http://getbootstrap.com/javascript/#js-programmatic-api
我删除了
data-toggle="modal" data-target="#myModal"
来自 LinkButton,而是添加了 onClick="LinkButton1_Click" - 见下文:
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" OnClick="LinkButton1_Click" CommandName="Select" Text="Select"></asp:LinkButton>
然后我在后面的 VB.NET 代码中引用了它:
Protected Sub LinkButton1_Click(sender As Object, e As EventArgs)
ScriptManager.RegisterStartupScript(Me, Me.GetType(), "myModal", "$('#myModal').modal()", True)
End Sub