代码之家  ›  专栏  ›  技术社区  ›  rhodesjason

使用jquery拖放后如何刷新PHP数据库日历?

  •  3
  • rhodesjason  · 技术社区  · 14 年前

    我有一个使用PHP构建的日历,上面有事件。

    我正在使用jquery ui启用拖放来移动事件。.droppable()函数附加了一个回调函数,用于用新信息更新数据库。但是日历需要刷新,以便从新的数据库值中读取。

    可以用jquery强制刷新页面吗?或者有更好的方法吗?

    4 回复  |  直到 14 年前
        1
  •  1
  •   Justin Bull    14 年前

    也许这就是你想要的?

    $("div.myCalendarCell").droppable({
        addClasses: false,
        accept: "div.myEvents",
        activeClass: "active",
        hoverClass: "hover",
        drop: function(event,ui) {  
            var myFormData = $(this).find("form.myEventFormData").serialize();
            $(this).load("php/myEventManager.php",{"myFormData":myFormData},function(e){
                alert("updated");
            });
        }
    });
    
        2
  •  1
  •   jay    14 年前

    您可以对更新数据库后重新构建日历的PHP函数进行Ajax调用。

    .droppable(function(){
    
      $('#calendar').load('scriptname.php', {variable1: 'var1', etc...});
    
    });
    
        3
  •  0
  •   Steven    14 年前

    location.reload(true)是您要查找的调用。

    $('.selector').droppable({
       drop: function(event, ui) { location.reload(true); }
    });
    
        4
  •  0
  •   Richard JP Le Guen    14 年前

    如果您在修改数据库时没有刷新,这意味着您正在执行httpxmlRequest…为什么不找出您是否可以让那个请求返回更改,并在浏览器中更新它?

    …因为如果要刷新页面,应该使用 <form> 提交,不?既然你没有,这让我觉得你想要一些甜蜜丰富的ui-ajax操作,而甜蜜丰富的ui-ajax操作的基本原则是“不刷新”。