0

我有一个相当简单的 asp 网格视图,绑定到对象数据源。我想要的是按钮单击时的此gridview 更新,其结果是动态的,具体取决于文本框中的值(它是搜索屏幕的基础)。

到目前为止,一切都是这样工作的:

ASPX 文件:

<h3>Search Parameters</h3>
<div>
   Account Name
   <asp:TextBox runat="server" ID="AccountName"></asp:TextBox>
</div>

<asp:Button ID="Search" runat="server" Text="Search" OnClick="Search_Click" />

<asp:GridView runat="server" ID="SearchGrid" DataSourceID="ObjectDataSource1" AutoGenerateColumns="False" Width="100%" AllowPaging="True" CellPadding="4" ForeColor="#333333" GridLines="None" >
   <Columns>
      <asp:BoundField DataField="PartyID" HeaderText="Party ID" SortExpression="PartyID" />
      <asp:BoundField DataField="PartyName" HeaderText="Party Name" SortExpression="PartyName" />
       <asp:BoundField DataField="CompleteAddress" HeaderText="Address" SortExpression="CompleteAddress" />
     </Columns>
     <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
 </asp:GridView>

 <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="GetData" TypeName="DIS.Data.DataSetAccountsTableAdapters.GetAccountsBySearchParametersTableAdapter">
   <SelectParameters>
      <asp:Parameter Name="PartyName" Type="String" />
   </SelectParameters>
</asp:ObjectDataSource>

ASPX.CS 文件:

protected void Search_Click(object sender, EventArgs e)
{
   ObjectDataSource1.SelectParameters["PartyName"].DefaultValue = AccountName.Text;
 }

从表面上看,一切正常。用户在帐户名称框中输入文本,点击搜索,网格视图将更新为适当的值。

当我们获得足够的行来生成分页时,就会出现问题。页面链接显示在 GridView 上,但单击它们根本没有效果 - 值将在第 1 页上保持一致。

我相信这可能与单击页面链接时的回发有关,但不幸的是,我在这方面的知识还不够强大,无法真正诊断到底发生了什么。

任何帮助将不胜感激最好的问候

4

1 回答 1

1

好的,在进一步测试中,它似乎不是 GridView 特定的问题。

我们也使用 JQuery mobile,似乎是那些脚本导致了问题。禁用它们消除了问题。

于 2012-10-17T02:59:53.680 回答