如何在javascript和ASP.NET中返回项目的当前域?

时间:2011-10-27 17:13:47

标签: c# javascript jquery asp.net

我有一些需要特定URL来调用ASP.NET Web服务的javascript。 当我在本地运行应用程序时,网址如下:

http://localhost:123456/ProjectName/Default.aspx

但是当我上传应用程序时,域名将更改为:

http://myDomain.com/Default.aspx

捕获当前网址路径并将其作为变量传递给我的javascript的最佳方法是什么?这是我的javascript:

            <script type="text/javascript">
            $(document).ready(function () {
                $("#autoComplete").autocomplete({
                    source: function (request, response) {
                        $.ajax({
                            type: "POST",
                            contentType: "application/json; charset=utf-8",
                            url: "http://localhost:123456/ProjectName/Default.asmx/SkillsList", //CHANGE THE URL!!
                          //url: "http://myDomain.com/Default.asmx", //The other URL...
                            data: "{'like':'" + request.term + "'}",
                            datatype: "json",
                            async: true,
                            success: function(data) {
                                response(data.d);
                            },
                            error: function(result) {
                            alert("error");
                            }
                        });
                    },
                    minLength: 2
                });
            });
    </script>

如果有帮助的话,我正在使用ASP.NET。

谢谢!

2 个答案:

答案 0 :(得分:4)

发布到相对路径

url: "/ProjectName/Default.asmx/SkillsList"

答案 1 :(得分:1)

看起来你正在写aspx页面。鉴于此,您应该能够让ASP.Net通过类似

的方式告诉您
url: "<%= Request.ApplicationPath%>/Default.asmx/SkillsList"