单击事件后bootstrap崩溃不保留状态

时间:2017-01-23 18:38:03

标签: javascript c# jquery twitter-bootstrap

我正在使用bootstrap崩溃。我已经设置了3个不同的面板,每个面板都有添加按钮。当我点击添加按钮(面板2)时,页面会刷新,并且它不会保持其状态,因此它会显示面板1.

<div class="panel panel-default">
  <div class="panel-heading">
    <h4 class="panel-title">
      <a data-toggle="collapse" data-parent="#accordion" href="#collapse1" id="col1">Stock Detail</a>
    </h4>
  </div>
  <div id="collapse1" class="panel-collapse collapse in">
    <div class="panel-body">
      <table class="table">
        <tr>
          <td>Stock Name</td>
          <td>
            <asp:TextBox ID="tbstockname" runat="server" CssClass="form-control"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator5" ValidationGroup="gp2" runat="server" ControlToValidate="tbstockname" ErrorMessage="Stock Name Required"></asp:RequiredFieldValidator>
          </td>
          <td>Client Name</td>
          <td>
            <asp:DropDownList ID="ddclientname" runat="server" CssClass="form-control">
            </asp:DropDownList>
          </td>
          <td>
            <asp:Button ID="btnaddstock" runat="server" ValidationGroup="gp2" Class="btn btn-primary" Text="ADD" OnClick="btnaddstock_Click" />
          </td>
        </tr>
        <tr>
          <td>
          </td>
        </tr>
      </table>
      <asp:GridView ID="gvstockdetail" class="table" runat="server" Width="500px">
      </asp:GridView>
    </div>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

您的问题是您正在使用服务器控件。有了它,将始终有一个回到服务器的帖子。

虽然有些人幸运
OnClientClick="return false;" 

为了防止这种刷新发生,您需要使用html元素,而不是服务器元素,并使用ajax调用您的函数。类似的东西:

<input type="button" onclick="doAction()" />

然后对服务器操作进行一些ajax调用:

var doAction = function() {
    //ajax call to your server
};

有关ajax调用的更多信息,请参阅文档:

http://api.jquery.com/jquery.ajax/