1

我在我的桌子上使用来自http://mottie.github.com的 jquery 插件 tablesort。发生的事情是

  • 您单击标题单元格
  • 一个 jquery ui 对话框显示正在加载
  • 当数据通过用户输入更改时,表缓存使用​​更新事件进行更新
  • 排序发生
  • 然后对话框被删除

问题是对话框并非总是打开或不会关闭,如果我在事件 sortStart 和 sortEnd 中打开对话框,则它会打开和关闭两次,但它会等待打开,直到更新事件完成。

如果我使用警报效果会更好,但这不是我想要的,我需要一个对话框。

底线是我需要使用更新事件和对话框.....你能帮忙..我的概念代码在下面..谢谢

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="js/jquery-1.8.2.min.js"></script>
    <script src="js/jquery.tablesorter.min.js"></script>
    <link href="css/smoothness/jquery-ui-1.9.1.custom.min.css" rel="stylesheet" />
    <script src="js/jquery-ui-1.9.1.custom.min.js"></script>



    <script type="text/javascript">

        $(function () {
            //add table sort
            $("#myTable").tablesorter();


            // bind to sort events begin
            $("#myTable").bind("sortBegin", function (e, table) {

                $('<div id="myDialog">loading</div>').dialog();

                $("#myTable").trigger("update"); // update table cache
                //alert('open');
            })

            $("#myTable").bind("updateComplete", function (e, table) {
                //alert("updateComplete")
            });

            $("#myTable").bind("sortStart", function (e, table) {
                //alert("sortStart")
            });

            $("#myTable").bind("sortEnd", function (e, table) {
                //alert("sortEnd")
                $('#myDialog').dialog("close");

            });



        });


    </script>




</head>
<body>
    <form id="form1" runat="server">
    <div>


        <table id="myTable" class="tablesorter"> 
  <thead> 
    <tr> 
      <th>Last Name</th> 
      <th>First Name</th> 
      <th>Email</th> 
      <th>Due</th> 
      <th>Web Site</th> 
    </tr> 
  </thead> 
  <tbody> 

    <tr> 
      <td>Smith</td> 
      <td>John</td> 


         <td>jsmith@gmail.com</td> 
          <td>$50.00</td> 
          <td>http://www.jsmith.com</td> 
        </tr> 

<!-- this is here to simulate loads of extra rows -->
          <% For index = 1 To 100

                  Response.Write("<tr><td>Doe</td><td>Jason</td><td>jdoe@hotmail.com</td><td>$100.00</td><td>http://www.jdoe.com</td></tr> ")

              Next
              %>

        <tr> 
          <td>Conway</td> 
      <td>Tim</td> 
      <td>tconway@earthlink.net</td> 
      <td>$50.00</td> 
      <td>http://www.timconway.com</td> 
    </tr> 
  </tbody> 
</table>


    </div>
    </form>
</body>
</html>
4

0 回答 0