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

jquery.net部署问题

  •  1
  • Harrison  · 技术社区  · 16 年前

    刚开始使用jquery,jquery post调用在本地dev box(vs 2008内置web服务器)上运行得很好,但在部署到windows 2003服务器(iis 6)时失败。

    post工作正常,页面被发布以正确处理事情,但是调用post函数从未收到响应。提交页面只是重新加载,没有任何更改。

    这是我的岗位职责(附在 $(document).ready(function() {...

    响应函数中的警报从不触发:

            $('.nextButton').click(function() {
    
                var idString = '';
    
                $("div.dropZone > div").each(function(n) {
                    idString += this.id + '|';
                });
    
                $.post('CustomPostHandler.aspx?step=criteria', { 
                    selected: idString
                },
                    function(data) {
                        alert(data);
                    });
            });
    

    post handler页确实接收到idstring变量fine,在进行一些处理之后,它会尝试写回响应:

            // Return dummy response to caller
            Response.Clear();
            Response.ContentType = "text/plain";
            Response.Write("success");
            Response.End();
    

    我已经检查了部署服务器环境,没有发现任何缺失(这是针对3.5SP1框架运行的)。有人有什么想法吗?还是我遗漏了什么?

    2 回复  |  直到 10 年前
        1
  •  1
  •   Eduardo Molteni    16 年前

    问题可能是由于缓存造成的。
    尝试向post url添加随机数

    $.post('CustomPostHandler.aspx?step=criteria&random=' + Math.random().toString(), { 
                selected: idString
            },
    
        2
  •  0
  •   kgiannakakis    16 年前

    我同意这可能是由于缓存。更一般的 $.ajax 函数允许您将缓存选项设置为false以禁用缓存。

    看看 documentation .