2012-11-01 65 views
2

这是我在这里的第一篇文章。任何帮助都是极好的。我试图从我的aspx页面使用jQuery和AJAX调用vb.NET子例程。当我在PC上运行VS 2008的页面(Windows XP SP2)时,效果很好。当我将该站点复制到生产服务器Windows Server 2008时,它不会执行任何操作。没有错误或任何东西。我试过用IE的脚本调试器进行调试。我一直试图弄清楚这几天,并没有任何事情。jQuery AJAX不能在生产服务器上工作

下面是脚本:

<script type = "text/javascript"> 
    function AjaxTest() { 
     $.ajax({ 
      type: 'POST', 
      url: "Test.aspx/AjaxTestSub", 
      data: "{}", 
      contentType: "application/json; charset=utf-8", 
      dataType: 'json', 
      async: true, 
      cache: false, 
      success: OnSuccess, 
      failure: function (response) { 
       alert("Didn't work!"); 
      } 
     }); 
    } 
    function OnSuccess(response) { 
     alert("Worked!"); 
    } 
</script> 

这里是简单的子程序:

<WebMethod()> Public Shared Sub AddPOToTrailer() 
    MsgBox("Made it to Subroutine!") 
End Sub 

我敢肯定,我留下了一大堆资料了,所以请你,如果你能想到的任何可能的帮助。

+0

看起来您正在使用Test.aspx页面引用的相对URL。该页面与服务器上的相同位置与开发环境中的位置相同吗? –

回答

1

您不能从服务器端代码调用MsgBox()
摆脱那个电话,一切都应该正常工作。

0

如果你想测试一个调用正在返回数据,你可以使用Response.Write而不是MsgBox。请记住,您可能需要使用Response.Clear和Response.Flush,具体取决于您如何管理您的代码。如果它是一个HttpHandler或Web服务调用,你应该没问题,但是如果你正在调用一个网页,它会呈现页面内容(如HTML),如果你不指示服务器停止响应.End一旦你写了您的内容添加到输出流。

希望这会有所帮助。

相关问题