我最近创建了一个网站,该网站允许用户上传图片,然后让该用户和该网站的其他用户对图片的评分为1-10。一切正常。当用户对图像评分时,将其保存,然后生成另一个随机框并将其呈现给用户。这是通过将新的框ID(随机生成)添加到查询字符串来实现的。这允许用户导航回到他们刚刚看到的图像。

我的问题来自更新页面。目前,我的代码处理分级并将其保存在数据库中,然后将用户重定向到同一页面,在该页面中我有一些代码可以从数据库中找到随机图像ID,然后使用该ID将其再次重定向到ID为的同一页面查询字符串。这项工作正常,但是我想这样做,以便仅更新图像和图像信息(图像名称评级等。),并更新HTML的其余部分(页眉,导航,侧栏,页脚等)。不是。

据我了解,您可以使用JQuery / Javascrip / AJAX上传网站的一部分吗?但是,这将不允许用户重定向回先前查看的图像吗?

如果您需要更多信息,请询问。

编辑

我已经掌握了一些信息,并更改了我的代码以使用哈希值,我的代码如下:

的HTML

<img id="design" alt="" width="300" height="300"  />
<input type="button" id="GetImage" value="Get Image" />


JQUERY

$(document).ready(function(){

    $("#GetImage").click(function() {

        $.ajax({ //Make the Ajax Request
                 type: "POST",
                 url: "testimagelook.php", //file name
                 success: function(server_response){
                    var id = server_response;
                    document.location.hash = id;
                    $('#design').attr('src','img/boxes/'+id+'.png');
                 }
        });
    });

});


php文件testimagelook.php连接到数据库,并带回我的一张图片的随机ID。此代码可以很好地显示图像并将图像ID保存在URL的哈希中,从而使我能够保留用户的图像历史记录。但是,我不确定如何在用户单击后退按钮时检索先前的哈希值并使用正确的ID重新加载图像。有任何想法吗?

最佳答案

是的,您可以使用jQuery AJAX方法来实现
为了您的简单起见,请使用此

$.post('pageURL.php', {data1: value1}, function(result) {
  // Update the portion of the page you wish to

});


更新

$.ajax({
  type: "POST",
  url: "PageName.aspx/MethodName",
  data: "{}",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function(data) {
    // Now receive the data (information) in the form of JSON
    // In this JSON you can pass the imageID or anything to proceed your logic
    // and update the portion of the page you wish to
  }
});

08-18 07:55
查看更多